Jump to content

readfile() - Inhalt mit Sonderzeichen "="


---
 Share

Recommended Posts

Hallo,

wir müssen aus einer Textdatei Daten auslesen... das funktioniert soweit.
Leider kommt es vor dass einige Zeichenketten ein "=" (ist gleich) enthalten.
Hier scheitert es dann!
Kann man dies irgendwie lösen - Wie?
Link to comment
Share on other sites

Ich nehme an, sie verwenden readListFile ()

Ich habe noch nie einen "normalen" charakter gefunden, der nicht damit umgehen kann. Welche kodierung hat ihre txt-datei? ANSI, UTF-8, ....? Hat Windows CLLF-zeilenende oder wird es von einem Unix-system nur mit zeilenvorschub erstellt?

Ich has einige probleme mit åäö in UTF-8, aber dann habe ich eine funktion zum konvertieren in unicode geschrieben. Aber sie klingen seltsam. Möchten sie eine der textdateien freigeben?
Link to comment
Share on other sites

3971_94038782f772d4a98ffbf55cb5142da9.txt
Anbei eine Beispieldatei.
Zeile 3 mit der Variablen "DMC" ist das Problem.
Solange dort kein "=" enthalten ist funktioniert es tadellos.
Leider haben wir keinen Einfluss auf den Inhalt um das Problem anderweitig zu lösen.
Dieser "DMC" (Datamatrixcode) ist eine Bauteilkennzeichnung... die ist fix und unveränderbar.

nun soll dieser komplette String auf das Messprotokoll und auch noch in eine weitere datei geschrieben werden.
Beim "=" scheitert es leider; es wird offenbar als mathem. Zeichen erkannt und nicht als String weiterverarbeitet.
Link to comment
Share on other sites

Ich habe keine problem. Sind sie sicher, dass das tatsächliche lesen der datei das problem ist? Und nicht irgendeine verarbeitung der daten später in ihrem kode? 114_b99a78451462d8189050f05f7106e3b3.png
Link to comment
Share on other sites

Well, wish He made that clear.

Yeah, I can see why that fails. Poor german programing... 😃

Just create the same function as readPCMFile your self then.. Something like this: (I haven't really tested it more then once..)
data=readListFile("c:\temp\data.txt")
for i = 1 to len(data)
	string=getParameterNamed(data,i)
	var=strElement(1,"=",string)
	value=subStr(string,len(var)+2,len(string))
	setParameterNamed(var,value.killTrailingBlanks.trimExteriorDoubleQuotes)
next i
Link to comment
Share on other sites

 Share

×
×
  • Create New...