| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: lesen einer XML Datei (1855 mal gelesen)
|
-ikarus- Mitglied Zeichner
Beiträge: 142 Registriert: 12.02.2007 ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015 Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro, Visual Studio 2013 Notepad++ Rechner: HP Z620 Workstation NVIDIA Quadro K4000
|
erstellt am: 01. Mai. 2015 08:31 <-- editieren / zitieren --> Unities abgeben:
Hallo Leute, Ich lese mit read-line eine XML aus, jetzt ist die XML im utf-16 codiert und ich bekomme nur zum Bsp. / 0 0 8... aus der XML als Wert. Wenn ich die XML mit einem Editor in Ansiehst codiere funktioniert es. Gibt es eine Möglichkeit das man die ausgelesen Zeilen konvertiert? [Diese Nachricht wurde von -ikarus- am 01. Mai. 2015 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 381 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 01. Mai. 2015 09:18 <-- editieren / zitieren --> Unities abgeben: Nur für -ikarus-
Hallo, also wenn du schon eine XML hast solltest du sie auch wie eine behandeln. Vor längerer zeit habe ich hier mal ein Beispiel reingestellt vielleicht hilft dir das erst einmal weiter da der aufbau deiner XML uns hier nicht bekannt ist. Aber so könntest du auch alle Werte wie in einer Datenbank zugreifen. Code: (setq DateiXML (findfile "c:\\lisp\\meine.xml")) ;;; Pfad anpassen !!!(if (and (findfile DateiXML) (setq Doc (vlax-create-object "MSXML2.DOMDocument.3.0")) (not (vlax-put Doc "async" 0)) (= (vlax-invoke Doc "load" DateiXML) -1) (= (vlax-get Doc "readyState") 4) ) (progn (setq Knoten (vlax-invoke-method Doc "selectNodes" "//MeineKnoten")) ;;; Hier werden alle Knoten mit Namen "MeineKnoten" gewählt (while(setq XML-Teil (vlax-invoke-method Knoten "nextNode")) (setq Mein-Wert;;; Hier wird der Wert von "MeineWerte" ermittelt. (vlax-get-property (vlax-invoke-method XML-Teil "selectSingleNode" "@MeineWerte" ) "text" ) ) (princ Mein-Wert) (terpri) ;;;Hier wir der Wert ausgegeben. )) )
------------------ Gruß Wolfgang Alias: Rabbit007 und Wolli1 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
-ikarus- Mitglied Zeichner
Beiträge: 142 Registriert: 12.02.2007 ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015 Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro, Visual Studio 2013 Notepad++ Rechner: HP Z620 Workstation NVIDIA Quadro K4000
|
erstellt am: 01. Mai. 2015 10:56 <-- editieren / zitieren --> Unities abgeben:
|
cadplayer Ehrenmitglied CADniker
Beiträge: 1832 Registriert: 28.04.2009
|
erstellt am: 01. Mai. 2015 11:12 <-- editieren / zitieren --> Unities abgeben: Nur für -ikarus-
Code: (defun vk_XMLGetAttributes (Node / Attributes Attribute OutList) (if (setq Attributes (vlax-get Node "attributes")) (progn (while (setq Attribute (vlax-invoke Attributes "nextNode")) (setq OutList (cons (cons (vlax-get Attribute "nodeName") (vlax-get Attribute "nodeValue") ) OutList ) ) (vlax-release-object Attribute) ) (vlax-release-object Attributes) (reverse OutList) ) ) ) ;;;(vk_XMLGetAttributes Node) (defun vk_XMLGetchildNodes (Node /) (if Node (if (= (vlax-get Node "nodeType") 3) (vlax-get Node "nodeValue") (cons (list (vlax-get Node "nodeName") (vk_XMLGetAttributes Node) (vk_XMLGetchildNodes (vlax-get Node "firstChild")) ) (vk_XMLGetchildNodes (vlax-get Node "nextSibling")) ) ) ) ) ;;;(vk_XMLGetchildNodes Node) (defun vk_ReadXML (FileName / Doc OutList *error*) (if (and FileName ;;; (setq FileName (findfile FileName)) (setq Doc (vlax-create-object "MSXML.DOMDocument")) (not (vlax-put Doc "async" 0)) (if (= (vlax-invoke Doc "load" FileName) -1) t (prompt (strcat "\nError: " (vlax-get (vlax-get Doc "parseError") "reason") ) ) ) (= (vlax-get Doc "readyState") 4) ) (setq OutList (vk_XMLGetchildNodes (vlax-get Doc "firstChild"))) ) (and Doc (vlax-release-object Doc)) (gc) OutList ) ;;; starte mit ;;;(vk_ReadXML (getfiled "" "" "xml" 16))
------------------ Gruss Dirk Blog | Adolf Spende | Infra-Feed | ÅF AB
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
-ikarus- Mitglied Zeichner
Beiträge: 142 Registriert: 12.02.2007 ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015 Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro, Visual Studio 2013 Notepad++ Rechner: HP Z620 Workstation NVIDIA Quadro K4000
|
erstellt am: 05. Mai. 2015 12:36 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 05. Mai. 2015 12:57 <-- editieren / zitieren --> Unities abgeben: Nur für -ikarus-
|
cadplayer Ehrenmitglied CADniker
Beiträge: 1832 Registriert: 28.04.2009
|
erstellt am: 06. Mai. 2015 07:34 <-- editieren / zitieren --> Unities abgeben: Nur für -ikarus-
|