//
Découpe d'une chaîne (Java)
// CoupeChaine.java Découpe d'une chaîne
// On prend l'exemple d'une suite de sous-répertoires, codée par exemple
// dans le chemin CLASSPATH
// //1 Utilisation de la méthode split
// //2 Utilisation de la classe StringTokenizer
import java.util.StringTokenizer;
import java.io.File;
public class CoupeChaine {
public static void main(String []args) {
String chemin=System.getProperty("java.class.path");
String rr[]=lesRépertoires(chemin);
System.out.println(chemin+"\n "+rr.length+" répertoires");
chemin="";
rr=lesRépertoires(chemin);
System.out.println(chemin+"\n "+rr.length+" répertoires");
chemin=""+File.pathSeparator;
rr=lesRépertoires(chemin);
System.out.println(chemin+"\n "+rr.length+" répertoires");
chemin=File.pathSeparator+File.pathSeparator;
rr=lesRépertoires(chemin);
System.out.println(chemin+"\n "+rr.length+" répertoires");
chemin=System.getProperty("user.dir");
rr=lesRépertoires(chemin);
System.out.println(chemin+"\n "+rr.length+" répertoires");
chemin="abc"+File.pathSeparator+"def";
rr=lesRépertoires(chemin);
System.out.println(chemin+"\n "+rr.length+" répertoires");
}
//1 Découpe en utilisation la méthode split
// Fournit les sous-répertoires
// éventuellement "" si chemin=""
static String [] lesRépertoires2(String chemin) {
chemin+=File.pathSeparator;
return chemin.split(File.pathSeparator);
}
//2 Découpe en utilisation la classe StringTokenizer
// cette classe devrait être abandonnée
// Fournit les sous-répertoires
static String [] lesRépertoires(String chemin) {
chemin+=File.pathSeparator;
StringTokenizer a = new StringTokenizer(chemin,File.pathSeparator);
int nr=a.countTokens();
String tr[] = new String[nr];
for(nr=0; a.hasMoreElements(); nr++ )
tr[nr]=a.nextToken();
return tr;
}
}
//fin CoupeChaine.java