Zerlegen von String

text = "C:\\Eigene␣Dateien\\Javatest\\Beispiel.java"
public String getVerzeichnis()
{
String verzeichnis = text.replace(getEndung(), "");
verzeichnis = verzeichnis.replace(getName(), "");
return verzeichnis ;
}
Ich habe ein Problem beim Verzeichnis.
Wenn ich den Verzeichnis ausgebe kommt = C:\\Eigene␣Dateien\\Javatest\\. raus, obwohl nur C:\\Eigene␣Dateien\\Javatest raus kommen soll.
 
Du hast uns weder getEndung noch getName gezeigt. Wenn getEndung aber nur "java" und getName nur "Beispiel" liefert, dann ist klar, dass durch diese replace Anweisungen nur eben genau diese Teile ersetzt werden. Somit bleibt alles, was vor dem Namen steht und auch der "."!
(Und Du hast natürlich ein Problem, wenn der Text, der bei getEndung oder getName zurück gegeben wird, auch noch an anderer Stelle vorkommt!)

Den Ansatz würde ich also so nicht wirklich als Zielführend bezeichnen. Du willst doch eigentlich alles, was vor dem letzten Backslash steht. Dann würde ich das auch genau so implementieren.
 

Zurück
Oben