Seite 1 von 1

PB 4.10 B1 - XML SetXMLNodeText Textbegrenzung O.o

Verfasst: 06.06.2007 13:05
von Kai
Folgender Code gibt bei mir einen IMA sobald ich in Zeile 19 die Value um ein Zeichen erhöhe.. Why? Bug?
Ausserdem ist die XML Formatierung noch sehr merkwürdig.
Bei Entry 1 setzt er das /Entry1 am Ende der Value Zeile und beim Entry2 erst nach einer neuen Zeile.

Code: Alles auswählen

EnableExplicit

Procedure XML_WriteEntry(Node, Keyword$, Value$)
 Protected Node_Child.l
 Node_Child = CreateXMLNode(Node)
 If Node_Child <> 0
  SetXMLNodeName(Node_Child, Keyword$)
  SetXMLNodeText(Node_Child, Value$)
 EndIf
EndProcedure

Global hXML.l = CreateXML(#PB_Any, #PB_Ascii)
If hXML <> 0
 Global Node.l = CreateXMLNode(RootXMLNode(hXML))
 
 SetXMLNodeName(Node, "Preferences")
 SetXMLAttribute(Node, "Version", "1.00")
 
 XML_WriteEntry(Node, "Entry 1", "Gibt an in welchen Zustand das xxxxxx") ;<- Ein Zeichen dran hängen!
 XML_WriteEntry(Node, "Entry 2", "Value 2")
 
 FormatXML(hXML, #PB_XML_ReFormat|#PB_XML_WindowsNewline, 2)
 
 SaveXML(hXML, GetHomeDirectory() + "Desktop\Test.xml")
 FreeXML(hXML)
EndIf
Ausgabe:

Code: Alles auswählen

<?xml version="1.0" encoding="ISO-8859-1"?>

<Preferences Version="1.00">
  <Entry 1>
    Gibt an in welchen Zustand das xxx</Entry 1>
  <Entry 2>
    Value 2
  </Entry 2>
</Preferences>

Re: PB 4.10 B1 - XML SetXMLNodeText Textbegrenzung O.o

Verfasst: 06.06.2007 13:16
von Kiffi
also, meinen Tests zufolge ist der Fehler eher in FormatXML() zu suchen.
Lässt man das weg, kann man beliebig viele Zeichen als NodeText angeben.

Grüße ... Kiffi

Verfasst: 06.06.2007 13:24
von Kai
Jap scheint wohl so, ohne Format läuft alles,
najo, Format is mir eh noch viel zu buggy. /:->

Verfasst: 07.06.2007 21:19
von freak
fixed.

Verfasst: 07.06.2007 22:41
von Kiffi
freak hat geschrieben:fixed.
Danke!

Grüße ... Kiffi