Une variable String java dont la valeur est
String path = "http://cdn.gs.com/new/downloads/Q22010MVR_PressRelease.pdf.null"
Je veux supprimer les quatre derniers caractères, c'est-à-dire .null
. Quelle méthode je peux utiliser pour diviser.
Une variable String java dont la valeur est
String path = "http://cdn.gs.com/new/downloads/Q22010MVR_PressRelease.pdf.null"
Je veux supprimer les quatre derniers caractères, c'est-à-dire .null
. Quelle méthode je peux utiliser pour diviser.
Je suis surpris de voir que toutes les autres réponses (au 8 septembre 2013) impliquent soit de compter le nombre de caractères dans la sous-chaîne ".null"
soit de lancer un StringIndexOutOfBoundsException
si la sous-chaîne n'est pas trouvé. Ou les deux :(
Je suggère ce qui suit :
public class Main {
public static void main(String[] args) {
String path = "file.txt";
String extension = ".doc";
int position = path.lastIndexOf(extension);
if (position!=-1)
path = path.substring(0, position);
else
System.out.println("Extension: "+extension+" not found");
System.out.println("Result: "+path);
}
}
Si la sous-chaîne n'est pas trouvée, rien ne se passe, car il n'y a rien à couper. Vous n'obtiendrez pas le StringIndexOutOfBoundsException
. De plus, vous n'avez pas à compter vous-même les caractères dans la sous-chaîne.
Si vous souhaitez supprimer les 5 derniers caractères, vous pouvez utiliser :
path.substring(0,path.length() - 5)
(pourrait contenir une erreur ;))
Si vous souhaitez supprimer une chaîne de variable :
path.substring(0,path.lastIndexOf('yoursubstringtoremove));
(pourrait également contenir une erreur ;) )
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.