2013-09-13 3 views
0

Я работаю над приложением для Android. Я получаю изображение из галереи. Также я получаю путь изображения из галереи. Теперь мое требование - я хочу получить только имя изображения с расширением. Как я могу это сделать? Пожалуйста, помогите мне.Как разбить строку на андроид?

String imgpath = "/mnt/sdcard/joke.png"; 

расширение изображения может быть что угодно joke.png или joke.jpeg. Мне нужно получить имя изображения с расширением, наконец.

i.e Я хочу разбить указанную выше строку и получить только joke.png.

Как я могу это достичь? Пожалуйста, помогите мне в этом.

+3

Вы пробовали 'imgpath.split ("/");'? –

+0

Попробуйте: http://stackoverflow.com/questions/3732790/android-split-string здесь много разных способов. –

ответ

4

Вы можете сделать это в Android, как и в любой программе Java:

String[] parts = imagepath.split("/"); 
String result = parts[parts.length-1]; 
4
String s[] = imgpath.split("/"); 
String result = s[s.length-1]; 
0

Вы можете получить это тоже с Regex, если та т молот у вас в руках:

String fileName = null; 
Pattern pattern = Pattern.compile("(^|.*/)([^/]*)$"); 
Matcher m = pattern.getMatcher(filenameWithPath); 
if(matcher.matches()) { 

     fileName = matcher.group(2); 
} 

Но не поддавайтесь искушению сделать это. Это менее читаемо и, вероятно, даже медленнее, чем другие методы.

1
String imgName = imgpath.substring((imgpath.lastIndexOf("/") + 1), imgpath.length()); 
Смежные вопросы