Laden...

Bestimmte Bytefolge in Bytearray finden (%%EOF in PDF finden)

Erstellt von haargel vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.283 Views
Thema geschlossen
H
haargel Themenstarter:in
264 Beiträge seit 2005
vor 12 Jahren
Bestimmte Bytefolge in Bytearray finden (%%EOF in PDF finden)

Ich downloade mit


WebClient webClient = new WebClient();
byte[] pdfBytes = webClient.DownloadData(path);

eine pdf-Datei. Leider hat diese nach dem %%EOF noch einiges an HTML-Code eingefügt.

Ich würde nun gerne das %%EOF im byteArray finden, doch mit


string download = System.Text.Encoding.UTF8.GetString(pdfBytes);

erhalte ich (wahrscheinlich durch enthaltene Nullcharacter) nur einen kleinen Teil der Daten.

Gibt es hierfür eine praktische Lösung?

S
417 Beiträge seit 2008
vor 12 Jahren

Hallo,

iteriere doch einfach von hinten durch das byte-Array und prüfe direkt da, wo sich das %%EOF befindet.

P
157 Beiträge seit 2010
vor 12 Jahren

Oder suche nach %%EOF nicht als string, sondern als byte.

49.485 Beiträge seit 2005
vor 12 Jahren

Hallo Community,

wer Lust hat, könnte eine ContainsSequence (Erweiterung-)Methode für (Bytes-)Arrays schreiben, die z.B. auf dem Boyer-Moore-Algorithmus basiert und diese in .NET-Komponenten und C#-Snippets veröffentlichen.

Dann hätte dieser Thread, der ansonsten unter [Hinweis] Wie poste ich richtig? Punkt 1.1.1 fällt, noch einen Sinn. Denn eine Schleife über ein Array zu schreiben, in der jeweils geschaut wird, ob an der aktuellen Stelle die gesuchte Sequenz beginnt, geht nicht über das Niveau einer einfachen Übungsaufgabe hinaus.

herbivore

Thema geschlossen