我正在开发安卓应用程序。我正在从图库中获取图像。我也从图库中获取图像路径。现在我的要求是我只想获取带有扩展名的图像名称。我怎样才能做到这一点?请帮我。
String imgpath = "/mnt/sdcard/joke.png";
图像扩展名可以是任何东西joke.png
或joke.jpeg
. 我最终需要获得带有扩展名的图像名称。
即我想拆分上面的字符串并只得到joke.png
.
我怎样才能做到这一点?请在这方面帮助我。
我正在开发安卓应用程序。我正在从图库中获取图像。我也从图库中获取图像路径。现在我的要求是我只想获取带有扩展名的图像名称。我怎样才能做到这一点?请帮我。
String imgpath = "/mnt/sdcard/joke.png";
图像扩展名可以是任何东西joke.png
或joke.jpeg
. 我最终需要获得带有扩展名的图像名称。
即我想拆分上面的字符串并只得到joke.png
.
我怎样才能做到这一点?请在这方面帮助我。
String imgpath = "/mnt/sdcard/joke.png";
String result = imgpath.substring(imgpath.lastIndexOf("/") + 1);
System.out.println("Image name " + result);
输出 :-
Image name joke.png
您可以像在任何 Java 程序中一样在 Android 中执行此操作:
String[] parts = imagepath.split("/");
String result = parts[parts.length-1];
String s[] = imgpath.split("/");
String result = s[s.length-1];
String imgName = imgpath.substring((imgpath.lastIndexOf("/") + 1), imgpath.length());
你也可以用 Regex 得到这个,如果你手里拿着锤子的话:
String fileName = null;
Pattern pattern = Pattern.compile("(^|.*/)([^/]*)$");
Matcher m = pattern.getMatcher(filenameWithPath);
if(matcher.matches()) {
fileName = matcher.group(2);
}
但不要试图这样做。这可读性较差,甚至可能比其他方法慢。