数据存储在本地时,往往不带文件后缀名。存储的文件名大都是数据库中的id名。提取文档时,需对文件名进行修改。以下是些例子:
String url = "c:\\1.jpg";
String fdFileName = "1.jpg";
//1、获取文件后缀名
String prefix=fdFileName.substring(fdFileName.lastIndexOf(".")+1);
//2、修改文件名
String url = "c:\\landray\\kmss\\resource"+fdFilePath.replace("/", "\\");
File oldFile = new File(""+url);
String rootPath = oldFile.getParent();
String oldFileName = oldFile.getName();
if(url.contains(".")){
}else{
oldFile.renameTo(new File(oldFile.getParent() + "/" + oldFileName +"."+ prefix));
}
url = url+"."+prefix;
url = url.replaceAll("\\\\", "\\\\\\\\");
注明:字符串替换,replace(oldStr,newStr),replaceAll(oldStr,newStr).
在不同的系统中,路径的分隔符不同,故需要做出判断,并切换分隔符
① java 把字符串中的反斜杠(\)替换成(\\)
replaceAll里面用的是正则表达式,所以字符串转义一次,正则转义一次,所以一个斜扛要写4个,用replaceAll( "\\\\ ", "\\\\\\\\ ");
② java 把字符串中的反斜杠(/)替换成(\)
replaceAll("/", "\\\\");