WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Xml Encoding

 

el_manfredo
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 27.01.09
Wohnort: Wien
Version: 7 (R14)
     Beitrag Verfasst am: 27.01.2009, 18:20     Titel: Xml Encoding
  Antworten mit Zitat      
hallo,
ich habe ein problem, dessen lösung ich nicht finden kann.
ich verwende die vorgefertigte xmlwrite() funktion von matlab.

grundsätzlich habe ich mich bei der erzeugung eines xml-files an das hilfe beispiel gehalten.

standardmäßig erhalte ich immer ein xml-file das utf-8 codiert ist. da ich aber umlaute benutze muss ich das encoding auf ISO-8859-1 umstellen, das jedoch schaffe ich nicht.

hab schon diverse Sachen wie meinxmlNode.setEncoding oder .setActualEncoding ausprobiert, funktionieren tut davon leider nichts

hat jemand eine ahunung wie ich das erreichen kann
<?xml version="1.0" encoding="ISO-8859-1"?>

danke sehr
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 28.01.2009, 17:50     Titel:
  Antworten mit Zitat      
Hallo ich hab
irgendwie auch keinen Erfolg auf direkten Wege gehabt, aber
ich hätte paar Vorschläge:


1) Ersetzen in Ausgabe String
Code:

% myDoc-Variablen Namen für dein Programm anpassen  
xml_string = char(myDoc.saveXML(docRoot));
xml_string=regexprep(xml_string,'UTF-8|UTF-16','ISO-8859-1');

fid = fopen('meinxml_1.xml', 'w');
fwrite(fid, xml_string);
fclose(fid);

 

2) Ausgabe über anderen Java-Package
Code:

% myDoc-Variablen Namen für dein Programm anpassen  
factory        = javax.xml.parsers.DocumentBuilderFactory.newInstance();
builder        = factory.newDocumentBuilder();
implementation = builder.getDOMImplementation();
% Output via DOM
% Serialize Document into String
mySerializer = implementation.createLSSerializer();

myOutput = implementation.createLSOutput();
myFOS    =  java.io.FileOutputStream('output.xml');
myOutput.setEncoding('ISO-8859-1');
myOutput.setByteStream(myFOS);
% myDoc-Variablen Namen für dein Programm anpassen  
mySerializer.write(myDoc, myOutput);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
el_manfredo
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 27.01.09
Wohnort: Wien
Version: 7 (R14)
     Beitrag Verfasst am: 28.01.2009, 21:31     Titel: danke
  Antworten mit Zitat      
Danke für deine Unterstützung;

glücklicherweise habe ich zu später Stunde noch eine Möglichkeit gefunden, das ganze doch recht unaufwendig zu lösen;

orientiert hab ich mich dabei an dem bsp. aus der matlab hilfe, das für xmlwrite() vorhanden ist;

nach ein bisschen ausprobieren bin ich auf eine möglichkeit gestossen wie's auch funktioniert.
im beispiel wird ja ein xml Document angelegt:

docNode = com.mathworks.xml.XMLUtils.createDocument('annotation')

nach einiger zeit des herumspielens ist mir dann diese Methode zugeflogen:

com.mathworks.xml.XMLUtils.serializeXML(docNode,dateipfad,'ISO-8859-1');

das funktioniert perfekt;
also danke nochmal für deine Lösung
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 29.01.2009, 00:26     Titel:
  Antworten mit Zitat      
Bin zwar auch auf diese Methode gestoßen, aber nicht verstanden, wie man an dieser Fkt. aufrufen muss.
Tja dank deiner Hilfe, weiß ich jetzt, was man so alles an die Fkt übergeben muss. Wink
Probiere ich morgen aus.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.