ot4xb und cUTF8ToAnsi() [erledigt]

Konzeptionelles, Technisches, Termine, Fragen zum Hersteller usw.

Moderator: Moderatoren

ot4xb und cUTF8ToAnsi() [erledigt]

Beitragvon peternmb » Do, 10. Nov 2016 15:38

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
Code: Alles auswählen
cTexta := cUTF8ToAnsi(MemoRead(datei))
mle:setData()

Was mache ich denn da falsch?
.
Zuletzt geändert von peternmb am Sa, 12. Nov 2016 11:11, insgesamt 1-mal geändert.
peternmb
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 429
Registriert: Mi, 01. Feb 2006 16:22
Wohnort: 06618 Naumburg

Re: ot4xb und cUTF8ToAnsi()

Beitragvon Martin Altmann » Do, 10. Nov 2016 16:15

Android ist Linux. Somit dürfte ein Zeilenwechsel kein chr(13) + chr(10) sein, sondern nur die 13 (glaube ich)!

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
 
Beiträge: 12742
Registriert: Fr, 23. Sep 2005 3:58
Wohnort: Berlin

Re: ot4xb und cUTF8ToAnsi()

Beitragvon brandelh » Do, 10. Nov 2016 16:54

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):

:arrow: viewtopic.php?f=16&t=7961

bei einfachen Sachen mit strTran() die chr(10) gegen chr(13)+chr(10) tauschen.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13268
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: ot4xb und cUTF8ToAnsi()

Beitragvon Martin Altmann » Do, 10. Nov 2016 19:20

Oder so rum 8)
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
 
Beiträge: 12742
Registriert: Fr, 23. Sep 2005 3:58
Wohnort: Berlin

Re: ot4xb und cUTF8ToAnsi()

Beitragvon peternmb » Fr, 11. Nov 2016 16:44

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
peternmb
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 429
Registriert: Mi, 01. Feb 2006 16:22
Wohnort: 06618 Naumburg

Re: ot4xb und cUTF8ToAnsi()

Beitragvon AUGE_OHR » Fr, 11. Nov 2016 20:12

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
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
 
Beiträge: 10154
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: ot4xb und cUTF8ToAnsi()

Beitragvon brandelh » Fr, 11. Nov 2016 20:17

genau getline() liest die Zeile ein und geht zur nächsten. Jimmys Funktion müsste gehen.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13268
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: ot4xb und cUTF8ToAnsi()

Beitragvon peternmb » Sa, 12. Nov 2016 11:11

Vielen Dank, jetzt funktioniert alles :blob8:
peternmb
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 429
Registriert: Mi, 01. Feb 2006 16:22
Wohnort: 06618 Naumburg


Zurück zu Allgemeine Fragen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast