爲什麼我不能創建一個新文件,我不知道是否因爲路徑不正確,如果沒有,也許問題出在我的服務器上。爲什麼不能創建新文件,路徑或路徑名分隔符是否正確?
我的代碼:下面
String signaturePath = pathService.getStringByKey(myConstants.REPORT_PATH) + File.separator + "hos_log" + File.separator + params.get("driver");
System.out.println(signaturePath);//it print this: /home/www/MyServer/report/\my_log\jo
String fileName = shortDate + ".jpg";
File file = new File(signaturePath + File.separator + fileName);//file debuged out : \home\www\MyServer\report\my_log\jo\20160601.jpg
dataMap.put("shortDate", shortDate);
dataMap.put("driverId", driverLog.getUserId());
if (file.exists()) {//false.and i go to the sever,there is no such file created.
dataMap.put("icon", "yes");
}else{
dataMap.put("icon", "no");
}
results.add(dataMap);
和,是如何爲分隔符碼:
public static final String separator = "" + separatorChar;
public static final char separatorChar = fs.getSeparator();
public char getSeparator() {
return slash;
}
class Win32FileSystem extends FileSystem {
private final char slash;
private final char altSlash;
private final char semicolon;
public Win32FileSystem() {
slash = ((String) AccessController.doPrivileged(
new GetPropertyAction("file.separator"))).charAt(0);
semicolon = ((String) AccessController.doPrivileged(
new GetPropertyAction("path.separator"))).charAt(0);
altSlash = (this.slash == '\\') ? '/' : '\\';
}
private boolean isSlash(char c) {
return (c == '\\') || (c == '/');
}
private boolean isLetter(char c) {
return ((c >= 'a') && (c <= 'z')) || ((c >= 'A') && (c <= 'Z'));
}
private String slashify(String p) {
if ((p.length() > 0) && (p.charAt(0) != slash)) return slash + p;
else return p;
}
我感到困惑的文件中創建,特別是如何寫的路徑。
現在我正下方
File file = new File(signaturePath + File.separator + fileName);
但它關閉一個異常異常在控制檯打印一次加
file.createNewFile();
,但它沒有再印,文件仍不是以重創的方式創造的。我們重新部署新的服務器到Tomcat之前 的代碼是正確的,所以我不知道如何文件創建物理,因爲我有從@maskacovnik
答案獲得信息======== ================================================== ======= 這個問題證明,這是因爲myConstants.REPORT_PATH指向的路徑是錯誤的,我顯示的代碼是沒有問題的。但是我仍然對它是如何擁有一個文件感到困惑,即使有沒有
file.createNewFile();
這是我的同事的代碼,他不在這裏工作,我是新的被分配到這個代碼,不知道爲什麼存在的問題,不能創建文件 – daxue
如果沒有例外,我不能幫你。如果出現,請附加日誌。這很奇怪,因爲如果沒有例外,它應該被創建。 – maskacovnik