web-dev-qa-db-fra.com

Fractionner la chaîne avec le caractère. (Point) Java android

Bonjour les amis j'ai une ficelle comme

Android_a_b.pdf

je veux le diviser comme Android_a_b et pdf

j'essaie de suivre le code comme

String s="Android_a_b.pdf"; 
String[] parts = s.split(".");
String part1 = parts[0];  
String part2 = parts[1];  

quand je cours au-dessus du code, il me donne une erreur comme

11-05 09:42:28.922: E/AndroidRuntime(8722): Caused by: Java.lang.ArrayIndexOutOfBoundsException: length=0; index=0

à String part1 = parts[0]; ligne

une idée comment puis-je le résoudre?

20
user3547706

Vous devez vous échapper . en utilisant \

Par exemple:

String s="Android_a_b.pdf";
String[] parts = s.split("\\."); // escape .
String part1 = parts[0];
String part2 = parts[1];

Maintenant, il sera divisé par .

Split (regex) in Java

Fractionne cette chaîne autour des correspondances de l'expression régulière donnée .

Cette méthode fonctionne comme si en appelant la méthode de fractionnement à deux arguments avec l'expression donnée et un argument limite de zéro. Les chaînes vides de fin ne sont donc pas incluses dans le tableau résultant.

Garde en tête que

Paramètres: regex - l'expression régulière délimitant