2014-05-11 8 views
-6

J'ai String = "/dir1/dir2/file1.sth"string split (chemin complet vers le fichier)

ou

String = "/dir1/file2.sth"

et autre.

que je dois faire quelque chose comme ceci:

chemin:/dir1/dir2/

et

Nom du fichier: file1.sth

Comment faire en Java?

+3

Facile, en écrivant du code. – Maroun

+1

trouver le dernier index de/et diviser à partir de là. – Braj

+0

trouver l'index du dernier '/' et l'utiliser comme une limite pour la scission? – Zavior

Répondre

1

Crée un objet fichier basé sur la chaîne. Vous devez ensuite appeler getName() pour obtenir le nom. Vous pouvez appeler getParent() pour obtenir le chemin avant d'

Voir ces docs: docs.oracle.com/javase/7/docs/api/java/io/File.html

0

Si vous définissez un fichier objet avec ce chemin (/dir1/file2.sth), vous pouvez facilement diviser le nom de fichier et l'adresse:

File f=new File("/dir1/file2.sth"); 

//get file name 
f.getName(); 

//get path 
f.getParentFile(); 
0
public static void main(String[] args) { 
    String filePath = "/dir1/dir2/file1.sth"; 
    String[] components = filePath.split("/"); 

    String path = ""; 
    for (int i = 0; i < components.length-1; i++) 
    { 
     path += components[i] + "/"; 
    } 
    String file = components[components.length-1]; 

    System.out.println("Path name: " + path); 
    System.out.println("File name: " + file); 
} 

que vous obtiendrez ce que vous voulez, et il vous montre également la sortie.