# zeichensatz



## MontyBurns (28. Jan 2010)

hi

schreibe gerade ne kleine anwendung die ne xml-datei erzeugt
dort werden unteranderem URIs gespeichert.
nun hab ich das problem das das programmm, welches die xml-datei lesen soll, diese URIs nur lesen kann wenn die richtig kodiert ist

beispiel:
"test test" wird zu "test%20test"

nun suche ich eine bibliothek, die mir diese kodierung abnimmt. hatte erst den urlencoder von apache commons versucht, doch der ersetzt ein leerzeichen durch ein "+"
kennt ihr das problem bzw. eine lib die das löst?

freu mich auf antworten

MontyBurns


----------



## Tomate_Salat (28. Jan 2010)

```
String test   = "hallo%20du%20da";
String decode = test.replaceAll("%20", " ");
```

*Edit* eine lib die es dir komplett umwandelt ist mir nicht bekannt, sollte ich eine finden, melde ich mich ;-)

MFG

Tomate_Salat


----------



## MontyBurns (28. Jan 2010)

deine lösung ist zwar einfach aber sicher nicht ausreichend
es geht ja wahrscheinlich cnith nur um das leerzeichen, sondern um viele sonderzeichen

ich glaub das ist die spezifikation dafür

kann mir nicht vorstellen das ich der erste bin der das problem hat ...


----------



## Tomate_Salat (28. Jan 2010)

Ähm ja, was du meinst ist mir klar, ist mir spontan nach dem Post gekommen. Denn so ein ähnliches Problem wie du hatte ich vor kurzem auch. Ich wollte den Pfad meiner URL nachträglich prüfen und da war dann [c]dokumente%20und%20...[/c] gestanden und da ich keine Methode gefunden hatte, die mir das rausschmeist hatte ich das mit [c]replaceAll(...);[/c] kurzfristig gelöst. Das ist mir beim Lesen deines Postes dann auch sofort eingefallen. Als ich abgeschickt habe, ist mir eingefallen: Da gibt es wohl noch wesentlich mehr zu beachten als das...Habe auch schon ein bisschen rumprobiert, weil ich dir eine bessere Lösung präsentieren wollte, aber hab leider nix gefunden. 

MFG

Tomate_Salat


----------



## MontyBurns (30. Jan 2010)

schade ...
hat keiner nen gute tipp?
warum bietet sowas nicht die entsprechende xml-library an?


----------



## MontyBurns (2. Feb 2010)

hab jetzt selbst ne lösung gefunden.
java bietet die Klasse URI.

wenn man nun ein File-Objekt hat, kann man per methode toURI() ein URI-objekt erzeugen.
mittels getRawPath() lässt sich dann der, gemäß RFC 2396, codierte pfad ausgeben

fertig

danke an Tomate_Salat für die mühe

MontyBurns


----------



## Tomate_Salat (2. Feb 2010)

ah danke, gut zu wissen, sollte ichs mal in zukunft gebrauchen. Danke für deinen Post mit der Antwort, gibt ja einige die ein Thema mit "habs gelöst" beenden ;-)


----------

