我有这样的音频和视频名称:
- azan1(1).mp3
- Funny.mp4
所以我需要一个唯一的AudioName作为azan,VideoName作为Funny。我是android的新手,不知道我怎么才能得到文件名?我怎样才能在代码中实现这一点。??
答案 0 :(得分:2)
尝试这种方式获取不带扩展名的文件名: -
if (fileName.indexOf(".") > 0)
fileName = fileName.substring(0, fileName.lastIndexOf("."));
答案 1 :(得分:2)
如44kksharma所述,您可以在.
拆分字符串以获得扩展名。我能看到的唯一问题是文件名是否在其他地方包含.
(对于一个实例filename.test.mp3) - 该文件是一个mp3,但有人可能认为filename.test
是文件的一部分名称。如果您这样想,这是使用拆分的正确方法:
String resultName = filename.split("\\.mp")[0];
如果您有其他扩展程序,则可以执行此操作:
String resultName = filename.split("\\.mp|\\.wav|\\.otherformat")[0];
其中包含mp3
的 mp4
和mp
因此,保证扩展名为.mp
的文件。
在正则表达式中使用|
为or
。
或者,您可以使用replaceAll
方法:
String result = filename.replaceAll("\\.mp3|\\.mp4", "");
replace
也有效,但由于它没有使用正则表达式,我发现它最终会替换错误的字符或最终搞砸了替换品。
最后,您也可以使用子字符串,但使用split()
,replace()
和replaceAll()
答案 2 :(得分:1)
在Java中,获取文件名的简单而有效的方法
String resultName= filename.split("\\.")[0].split("\\(")[0];
答案 3 :(得分:0)
if(audioname.contions(.mp3)
{
String audiostr= audioname.replace(".mp3", "");
}
if(videoname.contions(.mp4)
{
String videostr= videoname.replace(".mp3", "");
}
在所需的textview中设置字符串