wie kann man inhalt einer datei auslesen in der \x1a vorkomm

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
knox

hi!
ich will den inhalt einer datei auslesen. nur kommt in dieser datei \x1a vor. und da hört der doch einfach auf zu lesen und cancelt mir das ganze. hab mal kurz gegoogled und gefunden dass das n bekannt python bug ist. das kann doch net sein oder?
irgendjemand ne idee wie man das umgeht?
danke!
knox
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Works for me:

Code: Alles auswählen

In [24]: f = file('stange_binary', 'r')
In [25]: f.read()
Out[25]: 'abc\x1adef'
Was hast du denn für eine Python-Version? Ich glaube nicht wirklich, dass es ein Python-Bug ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Gast

python 2.4.1
es ist ein bug. ich habs bei google gelesen. bin net der einzige mit dem problem ;-)
welche version hast du denn? dann zieh ich mir die
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Code: Alles auswählen

Python 2.4.2 (#2, Sep 30 2005, 21:19:01)
[GCC 4.0.2 20050808 (prerelease) (Ubuntu 4.0.1-4ubuntu8)] on linux2
und funktioniert.
TUFKAB – the user formerly known as blackbird
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Anonymous hat geschrieben:python 2.4.1
es ist ein bug. ich habs bei google gelesen. bin net der einzige mit dem problem ;-)
Über STDIN könnte es evt. unter Windows zu einem Abbruch kommen, wenn STRG+D übertragen wird. Aber beim Öffnen einer normalen Datei??? --- Das glaube ich nicht. Mehr Informationen bitte.
Betriebssystem, Beispielcode, Fehlermeldung, Urls zu den Internetseiten die so etwas behaupten, ...

Falls es wirklich zu Problemen kommen solte, dann interessiert es uns hier natürlich. Falls das nur ein Troll-Posting ist. Dann lass es bitte.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Gast

http://mail.python.org/pipermail/python ... 13548.html
http://www.codecomments.com/message200597.html

also \x1a is EOF char. darum gabs hier trouble. im zweiten posting steht n tipp von wegen -rb als parameter beim öffnen nehmen. damit gehts ;-)
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Anonymous hat geschrieben:also \x1a is EOF char. darum gabs hier trouble. im zweiten posting steht n tipp von wegen -rb als parameter beim öffnen nehmen. damit gehts ;-)
Ahh! Das "STRG-D"-Problem. Nur dachte ich bis jetzt immer, dass STRG-D nur über die STDIN zu einem Abbruch führt. Bin wohl zu selten im Windows. 8)

OK, das einzige Problem das ich hier sehe ist, dass sich "file" bzw. "open" unter Windows anders verhält als unter Linux. Mit "rb" hat sich dein Problem ja erledigt. Das freut mich.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
BlackJack

Ich möchte nochmal sagen das es sich hier nicht um einen Bug in Python handelt, sondern um ein nerviges aber legitimes Verhalten des Betriebssystems.
knox

hi!
ok da wär schon alles geklärt. aber n kleines problem hab ich noch.
ich lese jetz die datei mit der option "rb" ein. somit ist \x1a kein problem mehr!
ABER: jedes mal wenn er mir die datei einliest und dann in ne neue datei schreibt, dann finde ich auf einmal \x0d\x0a statt \x0a!!
keine ahnung warum er mir da n \x0d dazwischenkleistert o_O
habt ihr noch ne idee?
danke euch!
Gast

ok problem selbst gelöst. beim schreiben hab ich das b vergessen ;)
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Problem gelöst wäre erst wenn Du Dir ein Betriebssystem angeschafft hast... Okay, ich bin heute abend wieder zu sarkastisch.

--- Heiko.
Antworten