Seite 1 von 1
ot4xb und cUTF8ToAnsi() [erledigt]
Verfasst: Do, 10. Nov 2016 15:38
von peternmb
Hallo,
ich möchte eine kleine 5-zeilige Textdatei die mit einem Android-Gerät erstellt wurde unter xbase in einem MLE anzeigen, bearbeiten und wieder speichern.
Die Datei hole bzw. speichere ich mit der FTP-Klasse von Phil Ide auf einem Webserver, das klappt problemlos.
Ich schaffe es allerdings nicht, die Datei so zu konvertieren, dass die Zeilenvorschübe erkannt werden, der Text geht in einem durch.
Ich wollte dazu ot4xb nutzen
Was mache ich denn da falsch?
.
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Do, 10. Nov 2016 16:15
von Martin Altmann
Android ist Linux. Somit dürfte ein Zeilenwechsel kein chr(13) + chr(10) sein, sondern nur die 13 (glaube ich)!
Viele Grüße,
Martin
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Do, 10. Nov 2016 16:54
von brandelh
Erklärung stimmt, aber Zeichen chr(13) ist beim Mac, Unix / Linux haben chr(10).
Für das zeilenweise Einlesen von Text-Dateien gibt es meine Klasse (die kümmert sich um sowas):
http://www.xbaseforum.de/viewtopic.php?f=16&t=7961
bei einfachen Sachen mit strTran() die chr(10) gegen chr(13)+chr(10) tauschen.
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Do, 10. Nov 2016 19:20
von Martin Altmann
Oder so rum
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Fr, 11. Nov 2016 16:44
von peternmb
brandelh hat geschrieben:
Für das zeilenweise Einlesen von Text-Dateien gibt es meine Klasse (die kümmert sich um sowas):
Ich habe deine Klasse jetzt eingebaut, klappt prima.
Was ich aber nicht hinbekomme:
1.) in einer Zeile steht eine Mailadresse, die möchte ich noch zusätzlich auslesen.
2.) ich möchte wissen, wie oft eine bestimmt Zeile vorkommt
So klappt es nicht:
Code: Alles auswählen
oTR := HBTextReader(datei)
do while ! oTR:EOF()
if Rat("@",oTR:GetLine()) > 0
mail=cUtf8ToOem(oTR:GetLine())
elseif cUtf8ToOem(oTR:GetLine()) = "***frei***"
lizenz++
endif
enddo
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Fr, 11. Nov 2016 20:12
von AUGE_OHR
peternmb hat geschrieben:1.) in einer Zeile steht eine Mailadresse, die möchte ich noch zusätzlich auslesen.
2.) ich möchte wissen, wie oft eine bestimmt Zeile vorkommt
So klappt es nicht:
versuche mal das
Code: Alles auswählen
oTR := HBTextReader(datei)
do while ! oTR:EOF()
cLine := oTR:GetLine()
if Rat("@",cLine) > 0
mail=cUtf8ToOem(cLine)
elseif cUtf8ToOem(cLine) = "***frei***"
lizenz++
endif
enddo
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Fr, 11. Nov 2016 20:17
von brandelh
genau getline() liest die Zeile ein und geht zur nächsten. Jimmys Funktion müsste gehen.
Re: ot4xb und cUTF8ToAnsi()
Verfasst: Sa, 12. Nov 2016 11:11
von peternmb
Vielen Dank, jetzt funktioniert alles