Zeichen in XML ändern

Status
Nicht offen für weitere Antworten.

lokly

Aktives Mitglied
Hi, ich hab kleines Programm in Java geschrieben, das mir aus einer Verzeichnisstruktur ein XML baut.
Allerdings habe ich folgendes Problem:
Ordner werden als Tags abgebildet und enthalten teilweise Zeichen wie &, Leerzeichen, §, $ und ähnliches, z.B.

<1. Übung & mehr>
text.txt
</1. Übung & mehr>.

Damit ich das XML im Explorer angezeigt bekommen kann, müsste es so aussehen:

<Uebung_mehr>
text.txt
</Uebung_mehr>

Bis jetzt bin ich durch das gesamte XML durchgerannt und hab alle unerlaubten Zeichen dabei geändert.. Aber es kann ja gut sein, dass ich dabei weitere Zeichen vergessen habe, die geändert werden müssten.
Daher die Frage:
Gibt es schon ein fertiges Package (externer Anbieter) oder etwas in der Java-API, was man verwenden kann um die gesamten Zeichen, die nicht vorhanden sein dürfen zu ändern?
 

mikachu

Top Contributor
Warum machst du das nicht gleich in deinem erstellten Programm, was dir die Verzeichnisstruktur ausgibt?

Das noch nachhaltig zu ändern ist zwar auch nicht schwer, aber eben schlechter Stil ;-)
 

lokly

Aktives Mitglied
Hab ich vielleicht etwas blöd ausgedrückt - ich ändert das schon alles im Programm bei jedem Aufruf, nur wie gesagt, suche ich ja eine Möglichkeit zum ändern durch die Java API oder einem externen Anbieter eines Packages, das sowas kann..
Hauptgrund ist ja der, dass bestimmt ein Zeichen dabei vergessen wird, allein wenn man die französischen und spanischen Sonderzeichen betrachtet - sowas ersetze ich derzeit gar nicht und wäre schön, wenn es dafür schon eine fertige Löschung gebe - wenn einer so eine kennt?
 

mikachu

Top Contributor
Das stellst du doch bereits in der Deklaration des XML ein. Durch das encoding-Attribut.

<?xml version="1.0" encoding="ISO-8859-1"?>

Oder UTF-8 als encoding.
 

lokly

Aktives Mitglied
Sieht ungefähr so aus:

<?xml version="1.0" encoding="UTF-8"?>
<Neuer Ordner>
Wert1
Wert2
Neuer Wert
Und & Zeichen
</Neuer Ordner>

Leerzeichen in den Tags und & Symbole bei den Werten.
Oder gibt es ein Encoding-Attribut, was das darstellen kann?
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben