Ich konnte den Code auf Anhieb kompilieren und ausführen in meinem neuen MT5.
- 0 Wininet-Probleme!
- Sehr guter Code
Toller Beitrag, vielen Dank.
Danke für die gute Bibliothek,
als ich versucht habe, mein Dokument über die Methode "File Input" zu parsen, habe ich folgende Fehlermeldung erhalten: *** Invalid Character found. Sollte der Anfang eines offenen Tags sein P:0 ***.
Nach einigem Suchen habe ich festgestellt, dass der Parser die Kodierung "UCS-2 LE BOM" akzeptiert, so dass es besser war, dies in der Beschreibung zu erwähnen,
Gibt es eine Möglichkeit, diese Standardkodierung zu ändern, da mein XMl Writer "UTF-8-BOM" verwendet?
Hallo nochmal, ich habe eine Lösung für meinen Fall gefunden, vielleicht hilft es anderen:)
ich habe eine Zeile der Funktion "CEasyXml::loadXmlFromFile(string pFilename)", die zur EasyXML Klasse gehört, geändert:
int hFile=FileOpen(pFilename,FILE_READ|FILE_ANSI,CP_UTF8);
diese liest meine Datei korrekt mit dem Kodierungsformat "UTF-8-BOM".
muss aber noch "BOM "Bytes Of Orders="ï "¿" Zeichen aus dem String mit entfernen:
StringReplace(pText,"","");
Hallo, ich versuche, die Daten auf dieser Seite zu erhalten: https://www.usda.gov/oce/commodity/wasde/latest.xml aber ich ger diesen Fehler mit dem Skript example_inline_parsing: *** Ungültiges Zeichen gefunden. Should be the beginning of an open tag P:0 ***
Ich ersetze gerade die Original-URL durch die obige und das Skript funktioniert nicht.
Hat jemand eine Idee?
Ich danke Ihnen
Hallo, Paul.
Vielen Dank für die Bereitstellung einer großartigen Utility-Klasse.
Kann man übrigens mit dem Copy-Konstruktor eine Deep Copy eines CEasyXmlNode-Objekts erstellen?
Es funktioniert nicht...
Plus weitere Fehler
sOutput += (ActualNode.getValue()) ? " Value: '" + ActualNode.getValue() + "'" : "";
Gibt Typ String zurück ActualNode.getValue()...
Es scheint einen Fehler zu geben, bei dem selbstschließende Tags verwendet werden.
So wird in vielen XML-Editoren bei einem leeren Tag dieser automatisch in einen selbstschließenden Tag umgewandelt, z.B.
<element></element>
wird zu
<element/> or<element />
automatisch.
und laut w3 XML elements ist es legal, selbstschließende Tags zu verwenden. Daher weiß ich nicht, warum sie beim Import von XML-Dokumenten nicht unterstützt werden. Hoffentlich kann @Liquinaut das Problem lösen.
Glücklicherweise ist in meinem Fall die Anzahl der selbstschließenden Tags relativ gering. Aber was ist, wenn das Dokument Hunderte oder Tausende solcher Tags hat? Wird von den Benutzern erwartet, dass sie diese Tags irgendwie in open + close Tags umwandeln?
edit: Für diejenigen, die selbstschließende Tags in getrennte Tags umwandeln wollen, können Sie dieses RegEx find/replace verwenden
Suchen: (<)(\w*)(.*)(/>)
Ersetzen: <$2$3></$2>
[Dies ist mit der .NET regEx Engine, die in TextCrawler3 verwendet wird. Andere Engines könnten ein anderes Format verwenden; experimentieren Sie]. Behält alle Attribute innerhalb des ursprünglichen Tags bei, falls vorhanden
- www.w3schools.com
Hallo, ich benutze die Bibliothek, aber ich bekomme den Fehler in easyxmlnode.mqh von ungültigen Zeiger in dieser Funktion:
CEasyXmlNode *CEasyXmlNode::createSibling(CEasyXmlNode *pSiblingNode)
{
pSiblingNode.Prev(GetPointer(this));
GetPointer(this).Next(pSiblingNode);
ParentNode.createChild(pSiblingNode);
return ParentNode.LastChild();
} Wissen Sie, wie ich den Fehler lösen kann?
Wissen Sie, wie ich den Fehler lösen kann?
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
EasyXML - XML Parser:
Autor: Paul van Hemmen