Filetype bekommen

uyiu

Mitglied
Hallo, ich bin gerade dabei, ein Programm zu schreiben, bei dem ich Dateien von einem Pc zum anderem schicke. Dabei brauch ich nun zuletzt einen Dateityp. Ich habe es schon versucht mit
Java:
finder.getCurrentFile().getName().split(".")[1]
, was mir aber null zurückgibt. Hat irgendjemand eine Lösung? Danke schon mal im Voraus
 
Zum testen probierte ich nochmals folgendes:

Code:
public class MainTest {

    public static void main(String[] args) {
       
        String datei = "datei.txt";
       
        String[] dateiArray = datei.split(".");
       
        System.out.println("Länge: " + dateiArray.length);

        System.out.println("1. Stelle: " + dateiArray[0]);
       
        System.out.println("2. Stelle: " + dateiArray[1]);
        }
}

Mir wurde folgendes Ausgegeben:
Code:
Länge: 0
Daraufhin gab es eine java.lang.ArrayIndexOutOfBoundsException.
 
split()erwartet kein Trennzeichen, sondern einen regulären Ausdruck. Versuche es mal so:
Java:
String[] dateiArray = datei.split("\\.");
 
Wieso? Dann hat die Datei eben keine Endung, der Index ist -1. Datei unbekannt. "Unbekannt" oder "Keine Endung" ist auch ein gültiges Ergebnis.
 
Schon klar, aber das muss man halt gesondert abfangen
und dann kommt sowas wie ".zshrc" und man muss es wieder anpassen, und landet dann bei der Variante, die Endungen einfach ignoriert...
 
Ach so. Ich dachte an dem String "zshrc" gibt es was besonderes. Aber den Fall musst du eh behandeln, egal ob split oder lastIndexOf
 

Zurück
Oben