多种操作系统中文件或文件夹命名规则不太一样,下面写了两种检测文件或文件夹命名的方法(修改自smart cache源代码)。
[b]文件系统是否允许文件名中有反斜线[/b]
[b]文件系统是否允许文件名以点结尾[/b]
[b]文件系统是否允许文件名中有反斜线[/b]
public boolean endBackslashFileSystem(){
String baseDir = "d:/";
File test = new File(baseDir , "test\\slash");
try {
new FileOutputStream(test).close();
} catch (IOException e1) {
return false;
}
test.delete();
return true;
}
[b]文件系统是否允许文件名以点结尾[/b]
public boolean endDotFilesystem() {
String baseDir = "d:/";
try {
new FileOutputStream(baseDir + File.separator + "dot.").close();
} catch (IOException e1) {
return false;
}
File d = new File(baseDir);
String names[];
names = d.list();
new File(baseDir, "dot.").delete();
if (names == null)
return false;
for (int i = 0; i < names.length; i++) {
if (names[i].toLowerCase().equals("dot."))
return true;
}
return false;
}