0

在为android编码时还没有遇到过这个。那么如何将一个变量的值用作新变量。

我想把像“file1.mp3”这样的变量的值去掉扩展名,然后将文本附加到变量中,并将其用作像file1_title.txt和file1_desc.txt这样的变量名。


所以 fName[1] 可能等于 file1.mp3

然后我想创建新变量

file1_title.txt 等于“歌曲标题一”

file1_desc.txt 等于“文件一的描述”

都基于 fname[1] 的值


fName[2] 等于 file2.mp3

file2_title.txt 等于“歌曲标题二”

file2_desc.txt 等于“文件二的描述”

都基于值 fName[2]


ETC...

这是如何为android完成的

4

2 回答 2

2

我不是 100% 确定我了解您的问题的详细信息,但请使用地图。“key”是歌名,value 是描述。

一些跟进。大量的挥手,没有错误检查。假设有一个 mp3 文件进入,并且您以某种方式从 MP3 文件中的标签中读取了标题和描述。YMMV

// TreeMap will sort by titles which seems reasonable
Map<String, String> songMapTitleToDesc = new TreeMap<String, String>();

MyMP3Reader mmp3r = new MyMP3Reader(File inFile);
String songTitle = mmp3r.getSongTitle();
String songDesc = mmp3r.getSongDesc();
songMapTitleToDesc.put(songTitle, songDesc);
mmp3r.close();  // or whatever
于 2013-02-13T06:13:42.727 回答
1

不确定这是否是您要查找的内容。它是基本的 Java 字符串格式。

String attr1 = "song.mp3";
String attr2 = attr1.split(".")[0] + ".txt";

自然地添加必要的空检查。

==更新==

因此,如果我对您的理解正确,您会得到一个文件名(“asd.mp3”)并需要歌曲名称及其描述。

String attr1 = "song.mp3";
String songname = "";
String songdesc = "";
String[] splitArray = attr1.split(".");
if(splitArray[0] != null){
    String songname = attr1.split(".")[0];
    File f = new File(path + songname +".txt");
    //I didn't quite understand in what format you get the data, 
    //especially the  description. However, it could be in a map 
    //where the songname is the key, as suggested above, and here you would write that description to file(f)

}

于 2013-02-13T06:22:26.037 回答