之前做一个东西的时候因为要存储2000+的汉字笔画文件,每个汉字对应相应的笔画 ,我从网上看过许多中文汉字名的存储方法都有问题
后来我想到了一个间接实现的方法在windows上把文件名用 URLEncoder.encode(string, "UTF-8");
转换然后在Android中找中文文件名的时候 例如 大.gif 就同样把 URLEncoder.encode(“大.gif ”, "UTF-8");
在Android去找转换后的文件
下面是java将文件名转换的代码:
package ttatx.rename;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
/**
* 文件 批量重命名
* @author tiyoto
*
*/
import java.util.Scanner;
public class BatchRenamefile {
//输出日志
public static volatile boolean isDebug = false;
public static void main(String[] args) {
String desc = "文件路径名";
File dir = new File(desc);
File[] files = dir.listFiles();
int count = 0;
for(File f : files){
if(f.isFile()&& !(".nomedia".equals(f.getName()))){
String string=f.getName();
try {
string = URLEncoder.encode(string, "UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
f.renameTo(new File(desc+"/"+string));
count ++;
}
}
}
}