java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Java - Programmierung > XML und Co.

Antwort    
Themen-Optionen Thema durchsuchen Ansicht
Alt 06.02.2012, 19:23   #1 (permalink)
Neuer Benutzer
byte
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Standard XML Bearbeiten ISO 8859-15

Hallo,

könnte mir jemand erklären wie ich eine XML Datei einlesen und bearbeiten kann die als ISO 8859-15 kodiert ist.

mfg
Zamu
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 06.02.2012, 19:31   #2 (permalink)
Stammbenutzer
Viertel Gigabyte
 
Benutzerbild von Marcinek
 
Registriert seit: 12.07.2010
Fachbeiträge: 3.663
Abgegebene Danke: 151
Erhielt 431 Danke für 420 Beiträge
Mit einem SAX oder DOM Parser.
__________________
Wie man Fragen richtig stellt.

Bei jedem Thread kommt nach einer völlig absurden Fehlerbeschreibung ein "habs gelöst" mit einer teils noch absurderen Lösung.
(timbeau)
Marcinek ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 07.02.2012, 08:23   #3 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Wäre es vllt möglich das du mir das etwas genau eklären könntest.

habe schon versucht es an diesem Beispiel nachzuvollziehen, jedoch verstehe ich das nicht ganz

XLM Datei lesen Ändern (kompliziertes Search and Replace) und Speichern



edit:
Das habe ich auch noch probiert jedoch scheint er da nicht mit dem encoding klar zu kommen, wie kann ich ihm denn sagen welches encoding er verwenden soll?

Javabeginners - XML-Dateilesen

mfg
zamu

Geändert von Zamurei (07.02.2012 um 08:38 Uhr)
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 07.02.2012, 08:37   #4 (permalink)
Stammbenutzer
Megabyte
 
Benutzerbild von musiKk
 
Registriert seit: 05.11.2007
Fachbeiträge: 1.844
Abgegebene Danke: 0
Erhielt 71 Danke für 68 Beiträge
Es wäre sehr sinnvoll, wenn Du Deine bisherigen Bemühungen zeigen könntest und was Du eigentlich machen willst. Im Moment kann das alles oder nichts sein.
__________________
GitHub-Profil
musiKk ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 07.02.2012, 08:40   #5 (permalink)
Stammbenutzer
Viertel Gigabyte
 
Benutzerbild von Marcinek
 
Registriert seit: 12.07.2010
Fachbeiträge: 3.663
Abgegebene Danke: 151
Erhielt 431 Danke für 420 Beiträge
Nein, das ist nicht das wonach du suchst.

Suche nach "Tutorial SAX Parser"

Ich würde es dir gerne erklären, aber XML Parsen ist nix, was du nun neu erfindest und es ist schon bestimmt google mal beschrieben.
__________________
Wie man Fragen richtig stellt.

Bei jedem Thread kommt nach einer völlig absurden Fehlerbeschreibung ein "habs gelöst" mit einer teils noch absurderen Lösung.
(timbeau)
Marcinek ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
Zamurei (07.02.2012)
Alt 07.02.2012, 08:41   #6 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Ich möchte eine XML-Datei einlesen und diese verändern können. Jedoch habe ich Probleme mit der Kodierung.

Die Datei ist als "ISO 8859-15" kodiert.



edit:
Danke, das hilft mir schon mal weiter.

Geändert von Zamurei (07.02.2012 um 08:44 Uhr)
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 07.02.2012, 09:02   #7 (permalink)
Stammbenutzer
Viertel Gigabyte
 
Benutzerbild von Marcinek
 
Registriert seit: 12.07.2010
Fachbeiträge: 3.663
Abgegebene Danke: 151
Erhielt 431 Danke für 420 Beiträge
Zitat: Zamurei
Beitrag anzeigen
Die Datei ist als "ISO 8859-15" kodiert.
Weißt du, was das bedeutet?

Zeig mal bitte deinen bisherigen Code.
__________________
Wie man Fragen richtig stellt.

Bei jedem Thread kommt nach einer völlig absurden Fehlerbeschreibung ein "habs gelöst" mit einer teils noch absurderen Lösung.
(timbeau)
Marcinek ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 07.02.2012, 09:22   #8 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Das ist doch der Zeichensatz der verwendet wird um den Text darzustellen.

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
Document doc;
File f = new File(pfad);
 
SAXBuilder builder = new SAXBuilder();
InputSource is = new InputSource(pfad);
is.setEncoding("iso-8859-15");
doc = builder.build(is);
 
XMLOutputter fmt = new XMLOutputter();
fmt.output(doc, System.out);

Hiermit kann ich die XML Datei jetzt ohne Probleme einlesen und auch in der Konsole wieder ausgeben.

mfg
zamu


edit:Jetzt stellt sich mir nur die Frage wie ich in der Datei Elemente suchen und bearbeiten kann.

Geändert von Zamurei (07.02.2012 um 09:53 Uhr)
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 08.02.2012, 11:36   #9 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Hallo,

ich hätte noch eine Frag zur Bearbeitung der XML-Datei.

XML Code: Quelltext in neuem Fenster öffnen
1
2
<Feld nr="1234" name="hans" wert="5"/>
<Feld nr="56789" name="michael" wert="3"/>

Mit

Java Code: Quelltext in neuem Fenster öffnen
1
getAttributeValue("nr");

komm ich zwar an das erste Feld, aber wie komme ich denn an das Zweite?

Danke und Gruß
Zamu
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 08.02.2012, 11:54   #10 (permalink)
Stammbenutzer
Halbes Megabyte
 
Benutzerbild von c_sidi90
 
Registriert seit: 13.09.2010
Fachbeiträge: 575
Abgegebene Danke: 78
Erhielt 65 Danke für 65 Beiträge
Wenn man mit XML Frameworks arbeitet wie z.B. JDOM bietet es sich an, die verschiedenen Elemente in eine List zu speichern. So kannst du durch alle Elemente iterieren und auf die einzelnen Attribute zugreifen.

Die Children des Rootelements bekommst du mit JDOM z.B. durch einen Aufruf von
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
 Element root = document.getRootElement();
List children = root.getChildren();
 
//Jetzt kannst du in einer Schleife durch die Liste iterieren
 
for(Element e : children){
 
   String value = e.getAttributeValue("nr"));
   System.out.println(value);
  
}
__________________
Keyboard not found.
Press ESC to continue.

wtf

Geändert von c_sidi90 (08.02.2012 um 11:57 Uhr)
c_sidi90 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
Zamurei (08.02.2012)
Alt 08.02.2012, 12:31   #11 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Ah, super Danke hat funktioniert.

Gruß
Zamu
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 09.02.2012, 12:35   #12 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Hi,

kannst du mir auch sagen wie ich zum Beispiel das Feld zwei löschen kann, denn wenn ich das selbe mit deiner Methode versuche, funkioniert das leider nicht.

Gruß
Zamu
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.02.2012, 10:12   #13 (permalink)
Stammbenutzer
Halbes Megabyte
 
Benutzerbild von c_sidi90
 
Registriert seit: 13.09.2010
Fachbeiträge: 575
Abgegebene Danke: 78
Erhielt 65 Danke für 65 Beiträge
Dafür musst du ein neues Document erstellen, und in diesem die Inhalte aus dem alten Laden. Aus der alten List mit den Children die beliebigen löschen, und diese List dem neuen Document hinzufügen. Also quasi eine exakte Kopie des ersten.
__________________
Keyboard not found.
Press ESC to continue.

wtf
c_sidi90 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.02.2012, 11:02   #14 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Hallo,

Also du meinst ich soll eine Kopie erstellen und das was ich löschen will einfach nur weglassen, beim schreiben des neuen Dokumentes?

Gruß
Zamu
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 15.02.2012, 07:31   #15 (permalink)
Stammbenutzer
Halbes Megabyte
 
Benutzerbild von c_sidi90
 
Registriert seit: 13.09.2010
Fachbeiträge: 575
Abgegebene Danke: 78
Erhielt 65 Danke für 65 Beiträge
Genau
__________________
Keyboard not found.
Press ESC to continue.

wtf
c_sidi90 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 20.02.2012, 09:39   #16 (permalink)
Neuer Benutzer
byte
Themenstarter
 
Registriert seit: 06.02.2012
Fachbeiträge: 9
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Hi,

kannst du mir dann vllt noch sagen wie ich das ganze wieder als "iso-8859-15" abspeichern kann.

Denn wenn ich das über

Java Code: Quelltext in neuem Fenster öffnen
1
2
FileWriter writer = new FileWriter (new File("C:/Test/test.xml"));
fmt.output(doc, writer);

mache bekomme ich das nur als "UTF-8" kodiert.
Zamurei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 20.02.2012, 10:54   #17 (permalink)
Stammbenutzer
Halbes Gigabyte
 
Benutzerbild von Landei
 
Registriert seit: 06.04.2005
Fachbeiträge: 5.438
Blog-Einträge: 15
Abgegebene Danke: 193
Erhielt 687 Danke für 564 Beiträge
Wenn deine XML-Datei eine feste Syntax hat und einem oder mehreren Objekten in deiner Applikation entspricht, kannst du auch JAXB zum deserialisieren nehmen, also statt XML---(Magie)--->DOM---(viel Handarbeit)--->DeinObjekt direkt XML---(Magie)--->DeinObjekt
__________________
... oder nimm einfach Scala! Bereit für die eSCALAtion?
Landei ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort    

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wie kann ich eine unter SAX eingelesene XML bearbeiten? Mehrlin XML und Co. 4 12.12.2011 11:25
Hilfe beim bearbeiten von XML elemente Faiza XML und Co. 3 24.11.2010 14:08
XML in Jtree bearbeiten Mario170783 XML und Co. 2 08.09.2010 11:14
XML einlesen, analysieren, bearbeiten & als Textdatei ausgeben SmartGuy XML und Co. 1 02.11.2009 08:03
value Wert einer XML Datei mit JAVA bearbeiten NNiko XML und Co. 21 11.08.2009 12:30


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:50 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de