ASCII-Textdateien in binaere Textdateien umwandeln
Guten Abend! Ich bin gerade dabei, verschiedene Messdaten als Input-Dateien fuer ein Simulationsprogramm zusammenzustellen. Dieses ist in VisualBasic geschrieben [ ICH war's nich! :-) ] und "will" diese Dateien im binaeren Format. Hat von Euch jemand ein Skript bei der Hand, das mir die ASCII-Textfiles (mit Messdaten in Spalten, durch Leerzeichen getrennt) in binaere Textfiles umwandeln koennte? Das geht doch bestimmt irgendwie mit Perl ... *schmunzel* Vielen Dank fuer Eure Bemuehungen im voraus! /Sven.
* Sven Wahl schrieb am 31.Jan.2003:
Ich bin gerade dabei, verschiedene Messdaten als Input-Dateien fuer ein Simulationsprogramm zusammenzustellen. Dieses ist in VisualBasic geschrieben [ ICH war's nich! :-) ] und "will" diese Dateien im binaeren Format.
Hat von Euch jemand ein Skript bei der Hand, das mir die ASCII-Textfiles (mit Messdaten in Spalten, durch Leerzeichen getrennt) in binaere Textfiles umwandeln koennte? Das geht doch bestimmt irgendwie mit Perl ... *schmunzel*
Was ist ein binäres Textfile? Bernd -- ACK = ACKnowledge = Zustimmung | NAC = No ACknowledge = keine Zustimmung DAU = Dümmster Anzunehmender User | LOL = Laughing Out Loud = Lautes Lachen IIRC = If I Remember Correctly = Falls ich mich richtig erinnere OT = Off Topic = Am Thema (der Liste) vorbei |Zufallssignatur 11
Hallo, On Fri, 31 Jan 2003, Sven Wahl wrote:
Ich fand den Begriff anfangs auch ziemlich verwirrend. Ich nahm folgendes an:
ASCII-Text: zum Beispiel dieser
"binaerer Text": 1101001101000000001 ...usw.
Ahso. Folgendes sollte machen was du willst. ==== liest nur von der Standardeingabe ==== #!/usr/bin/perl -nw use strict; chomp; my @l=split(""); foreach(@l) { print unpack('B*', pack 'A*', $_), " "; } END { print "\n"; } ===== $ echo 'binärer Text ?' | /tmp/test/ascii2binaerstring.pl 01100010 01101001 01101110 11100100 01110010 01100101 01110010 00100000 01010100 01100101 01111000 01110100 00100000 10100100 $ { echo 'ibase=2;'; echo 'binärer Text ?' | /tmp/test/ascii2binaerstring.pl | sed 's/ /;/g'; } | bc | xargs echo 98 105 110 228 114 101 114 32 84 101 120 116 32 164 Wie man sieht wurde z.B. das ä als 228 (dec) kodiert, Leerzeichen als 32 und der Euro als 164. Je nachdem ob du zwischen den Bytes ein Leerzeichen willst oder nicht, musst du das ', " "' am Ende des 'print' Befehls aendern bzw. weglassen. Auch das "END" musst du ggfs. ersetzen, je nach dem, wie die Ausgabe aussehen soll. Wenn du nach jeder Zeile der Eingabe ein Zeilenumbruch erfolgen soll, fuege statt dem 'END {}' nur das 'print "\n";' ein... -dnh -- 4. If you have the right attitude, interesting problems will find you. --- Eric S. Raymond, "The Cathedral and the Bazaar"
Hallo, On Sat, 01 Feb 2003, David Haller wrote:
On Fri, 31 Jan 2003, Sven Wahl wrote:
Ich fand den Begriff anfangs auch ziemlich verwirrend. Ich nahm folgendes an:
ASCII-Text: zum Beispiel dieser
"binaerer Text": 1101001101000000001 ...usw.
Ahso. Folgendes sollte machen was du willst.
==== liest nur von der Standardeingabe ==== #!/usr/bin/perl -nw use strict; chomp; my @l=split(""); foreach(@l) { print unpack('B*', pack 'A*', $_), " "; } END { print "\n"; } =====
Gegenrichtung: ==== #!/usr/bin/perl -nw use strict; chomp; my @l=split(" "); foreach(@l) { print unpack("a*", pack("B*", $_)); } END { print "\n"; } ==== -dnh -- Thank you so much. This brought back the MCSE module "Networking with MS-TCP/IP". Also affectionately known as "Rebooting Windows NT". My god that sucked planets through buckytubes. -- Arthur van der Harg in asr
Moin,
* Sven Wahl
Was ist ein binäres Textfile?
Ich fand den Begriff anfangs auch ziemlich verwirrend. Ich nahm folgendes an:
ASCII-Text: zum Beispiel dieser
"binaerer Text": 1101001101000000001 ...usw.
Hast Du das mal überprüft? Ich bin bei meiner Antwort davon ausgegangen, daß eher Zahlen das Problem sind, die von ASCII in eine binaäre Darstellung umgewandelt werden sollen: ASCII: ab12 Binär: 01100001 01100010 00000001 00000010 Thorsten -- Politik kann man in diesem Lande definieren als die Durchsetzung wirtschaftlicher Zwecke mit Hilfe der Gesetzgebung. - Kurt Tucholsky
Hallo David & Thorsten! Vielen Dank fuer Eure Tipps, und Dir, David, fuer das Perl-Skript.
* Sven Wahl
[2003-01-31 20:20]: Was ist ein binäres Textfile?
Ich fand den Begriff anfangs auch ziemlich verwirrend. Ich nahm folgendes an:
ASCII-Text: zum Beispiel dieser
"binaerer Text": 1101001101000000001 ...usw.
On Saturday 01 February 2003 12:28, Thorsten Haude wrote:
Hast Du das mal überprüft? Ich bin bei meiner Antwort davon ausgegangen, daß eher Zahlen das Problem sind, die von ASCII in eine binaäre Darstellung umgewandelt werden sollen: ASCII: ab12 Binär: 01100001 01100010 00000001 00000010
Das ist richtig. Es handelt sich um Messdaten der Form 12.34 Das Beste ist wahrscheinlich, wenn ich mir das Programm, welches die Daten letztendlich verarbeiten soll, am Montag erst einmal selbst anschaue ... Schoenes Wochenende in der Zwischenzeit! /Sven.
Hallo! Am Freitag, 31. Januar 2003 19:36 schrieb Sven Wahl:
Hat von Euch jemand ein Skript bei der Hand, das mir die ASCII-Textfiles (mit Messdaten in Spalten, durch Leerzeichen getrennt) in binaere Textfiles umwandeln koennte? Das geht doch bestimmt irgendwie mit Perl ... *schmunzel*
Frag mich zwar, wie eine Textdatei binär sein kann, aber versuchs mal mit strfile. vielleicht macht es das, was du meinst MfG Frank "Fraehngk" Lanitz -- http://www.PartySOKe.de - Wissen was geht! http://www.Fraehngk.de - Tie lebt !
Moin,
* Sven Wahl
Ich bin gerade dabei, verschiedene Messdaten als Input-Dateien fuer ein Simulationsprogramm zusammenzustellen. Dieses ist in VisualBasic geschrieben [ ICH war's nich! :-) ] und "will" diese Dateien im binaeren Format.
Hat von Euch jemand ein Skript bei der Hand, das mir die ASCII-Textfiles (mit Messdaten in Spalten, durch Leerzeichen getrennt) in binaere Textfiles umwandeln koennte? Das geht doch bestimmt irgendwie mit Perl ... *schmunzel*
Ja, das geht bestimmt in Perl, ist aber nicht trivial. Einfacher ist es vielleicht in VBA, weil Du dann schon die Datentypen 'kennst'. Ansonsten würde ich einen hungrigen Studenten suchen und Geld bieten. Thorsten -- The history of Liberty is a history of the limitation of government power. - Woodrow Wilson
participants (5)
-
B.Brodesser@t-online.de
-
David Haller
-
Frank "Fraehngk" Lanitz
-
Sven Wahl
-
Thorsten Haude