Anzeige

dateien mit absoluten pfaden bearbeiten


#1
Hallo.

Zwecks eines Projekts in der Vorlesung muss ich Strings, die aus absoluten Pfaden und Dateinamen bestehen (der Art: C:\mp3s\blabla.mp3) bearbeiten.
Mein Ziel ist folgendes:
Ich will die Strings so bearbeiten, dass ich den Pfad und den Dateinamen getrennt vorliegen habe (um zB einen eigenen Typ File mit den Feldern Name und Pfad erstellen zu können oder so).
Ein Kommilitone sagte mir, dass es zB in c# ein Funktion gibt, die mir genau das liefert. Da gibt man anscheinend einen String der Form <Laufwerk>:\...\name.endung ein und erhält dann den dateinamen.endung zurück.
Gibt es in Java auch eine entsprechende Klasse oder so?
Hm ich könnte aber auch mit substring-Methoden die Strings zerschneiden, was aber laut Professor den Rahmen des Projekts sprengen würde.
Oder sollte ich mal im c# Forum nachfragen?
Naja bisher habt ihr mir immer super geholfen. =)

mfg
tom

edit: Falls es keine Abkürzung über ne fertige Klasse gibt würde ich gerne etwas nach folgender Art programmieren:

1. nimm den String x (inhalt: <Laufwerk>:\...\name.endung)
2. trenne so: substring1 = <Laufwerk>:\<beliebige Zeichenfolge>\
substring2 = name.endung

Wie programmier ich aber jetz <beliebige Zeichenfolge>? Hört sich irgendwie voll nach dumm an ich weiss...wahrscheinlich hab ich nur grad ein Denkloch und mir fällt noch was ein. Ansonsten bin ich aber für jede Hilfe dankbar =)
 
Zuletzt bearbeitet:

Christian Fein

Erfahrenes Mitglied
#2
Code:
String filename = "C:\\work\\ordner\\test.txt";
File file = new File(filename);
System.out.println(file.getName());
System.out.println(file.getPath());
System.out.println(file.getParent());
file.getName(); => test.txt
file.getPath(); => C:\work\ordner\test.txt
file.getParent(); => C:\work\ordner

Rate mal wovon die C# / .net API abgeschaut worden ist ? ;)
 
#3
wow cool.

bau ich gleich mal ein.

also als ich die ersten fetzen c# code gelesen hab is mir gleich aufgefallen, dass die sprache was von java hat. is das eigentlich nur ne kombination von c++ und java oder hat die sprache noch andere einflüsse?

edit: die einzelnen backslashes muss ich durch ne eigene methode verdoppeln oder? so nach dem motto: ersetze alle \ durch \\
ich hab mir das vorher eigentlich ganz einfach vorgestellt...is aber doch net so der hit =( aber ich probier mal weiter
 
Zuletzt bearbeitet:

Christian Fein

Erfahrenes Mitglied
#4
Ja und Nein.

Einflüsse von Java zum grössten Teil. Ein paar Dinge von C++ reingemixt, und dazu noch etwas Pascal hier und da.

Leider wurden bei C# viele schlechte Dinge übernommen, die mann besser hätte draussen lassen sollen.
 
Anzeige
Anzeige