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

Kommentare aus XML Datei entfernen

 

n.force
Forum-Century

Forum-Century


Beiträge: 118
Anmeldedatum: 02.03.12
Wohnort: nähe Magdeburg
Version: ---
     Beitrag Verfasst am: 22.11.2012, 12:45     Titel: Kommentare aus XML Datei entfernen
  Antworten mit Zitat      
Hallo liebe Community,

ich habe etwaige XML Dateien, welche auch Kommentar enthalten.
Diesen Kommentar möchte ich gern automatisiert löschen.
Ich stelle mir vor, dass das Ganze so funktionieren könnte:

1.) XML File einlesen
2.) XML File als TXT File abspeichern
3.) TXT File einlesen
3.) Kommentare ausfindig machen
4.) Kommentare löschen
5.) TXT File wieder in XML_neu Datei umwandeln
6.) XML_neu Datei in Matlab verwenden
7.) XML_neu und TXT File löschen

Nach sehr langer Recherche, bin ich noch immer nicht schlauer, ob man das grundsätzlich so machen kann/sollte und wenn ja, mit welchen Matlab Funktionen?

Ihr würdet mir echt weiterhelfen, hättet ihr einen Ansatz!

Vielen Dank
Steffen
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 23.11.2012, 15:29     Titel:
  Antworten mit Zitat      
Hallo,

eine XML-Datei ist ja an sich auch eine strukturierte Textdatei. Ich sehe also keine zwingende Notwendigkeit, das Dateiformat zu ändern.
Ich würde versuchen, direkt mit textscan einzulesen. Dann die Kommentare ausfindig machen (wenn die Kommentare über Tags erkennbar sind z.B. über reguläre Ausdrücke mit regexprep) und entfernen, und dann genauso wieder abspeichern (fprintf).

Letztlich wird es auf einen Versuch ankommen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
n.force
Themenstarter

Forum-Century

Forum-Century


Beiträge: 118
Anmeldedatum: 02.03.12
Wohnort: nähe Magdeburg
Version: ---
     Beitrag Verfasst am: 23.11.2012, 15:43     Titel:
  Antworten mit Zitat      
Vielen Dank Harald,

das werd ich nach dem Wochenende direkt probieren...

Ich werde dann berichten
Private Nachricht senden Benutzer-Profile anzeigen
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.11.2012, 01:27     Titel:
  Antworten mit Zitat      
Hallo n.force,

es ist eine ganz schlechte Idee, xml-Dateien als txt-Datei zu behandeln.
Ohne den Inhalt des xml zu interpretieren ließe sich auch gar nicht entscheiden
ob es sich um einen Kommentar handelt oder nicht. Und ob man nach dem
Gemetzel dann noch gültiges xml hat, ist reine Glückssache.

Aber dafür gibt es ja xml-Bibliotheken:
Code:
document = xmlread('test.xml');
walker = document.createTreeWalker(document,org.w3c.dom.traversal.NodeFilter.SHOW_COMMENT,[],0)
node = walker.nextNode;
while ~isempty(node)
  next = walker.nextNode;
  node.getParentNode.removeChild(node);
  node = next;
end;
xmlwrite('test_sc.xml',document);


Warum willst Du überhaupt Kommentare entfernen?
Es ist doch hilfreich kommentierte Datei zu haben.

Grüße
Sirius
Private Nachricht senden Benutzer-Profile anzeigen
 
n.force
Themenstarter

Forum-Century

Forum-Century


Beiträge: 118
Anmeldedatum: 02.03.12
Wohnort: nähe Magdeburg
Version: ---
     Beitrag Verfasst am: 24.11.2012, 05:52     Titel:
  Antworten mit Zitat      
Hallo Sirius,

Danke für diese ausführliche Antwort. Irgendwie war mir schon klar, dass meine Idee nicht so ganz sauber ist.
Ich muss die Kommentare entfernen, da ich die XML Dateien mit der Funktion xml2struct weiter verarbeiten muss. Diese kommt aber leider garnicht mit Kommentaren zurecht.

Also, ich versuche es nächste Woche mit deiner Lösung und melde mich wieder.

Danke
Steffen
Private Nachricht senden Benutzer-Profile anzeigen
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.11.2012, 15:38     Titel:
  Antworten mit Zitat      
Hallo Steffen,

ja das xml2struct hat einen Bug mit Kommentaren/Text und normalen Elementen.
Hier eine korrigierte Version.

Grüße
Sirius

xml2struct.m
 Beschreibung:
Bug-fixed

Download
 Dateiname:  xml2struct.m
 Dateigröße:  6.96 KB
 Heruntergeladen:  455 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
n.force
Themenstarter

Forum-Century

Forum-Century


Beiträge: 118
Anmeldedatum: 02.03.12
Wohnort: nähe Magdeburg
Version: ---
     Beitrag Verfasst am: 24.11.2012, 19:27     Titel:
  Antworten mit Zitat      
Das ist ja von Allen die eleganteste und beste Lösung.
Wo hast du denn die korrigierte Version her, wenn ich fragen darf?

Auf www.mathworks.de ist nur die Version mit Bugs.
Hättest du was dagegen, wenn ich deine korrigierte Version dort hochlade??

Ich danke dir vielmals.
Du hast mir sehr geholfen.

bis dann
Steffen
Private Nachricht senden Benutzer-Profile anzeigen
 
n.force
Themenstarter

Forum-Century

Forum-Century


Beiträge: 118
Anmeldedatum: 02.03.12
Wohnort: nähe Magdeburg
Version: ---
     Beitrag Verfasst am: 24.11.2012, 19:41     Titel:
  Antworten mit Zitat      
Schade, ich hab es gerade ausprobiert und bekomme leider eine Menge Fehlermeldungen.
Ich habe mal ein XML File angehängt, so wie ich sie benutze...

ESM301_RB.txt
 Beschreibung:
XML Dateien können hier nicht hochgeladen werden...Nur Dateierweiterung ändern!!!

Download
 Dateiname:  ESM301_RB.txt
 Dateigröße:  1.57 KB
 Heruntergeladen:  501 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Sirius3
Forum-Guru

Forum-Guru


Beiträge: 441
Anmeldedatum: 12.11.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.11.2012, 11:55     Titel:
  Antworten mit Zitat      
Hallo n.force,

kleiner Copy-Paste-Fehler. Ich hab das zum Anlass genommen, der kompletten
Funktion ein Redesign zu verpassen (kleiner, schneller, DRYer und meiner Meinung
nach einfacher).

Bei weiteren Fehlern kannst Du mir also komplett die Schuld geben.

Grüße
Sirius

xml2struct.m
 Beschreibung:
nächster Versuch

Download
 Dateiname:  xml2struct.m
 Dateigröße:  4.46 KB
 Heruntergeladen:  469 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
n.force
Themenstarter

Forum-Century

Forum-Century


Beiträge: 118
Anmeldedatum: 02.03.12
Wohnort: nähe Magdeburg
Version: ---
     Beitrag Verfasst am: 25.11.2012, 12:00     Titel:
  Antworten mit Zitat      
Unfassbar,

funktioniert tadellos. Ich danke dir für deine Mühen.

Hast du was dagegen, wenn ich das File auf Matlab Central poste??


Schönes Restwochenende...
Steffen
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 - 2025 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.