報錯信息 如題, cn.hutool.core.io.IORuntimeException: Not a file.... 報錯位置 FileReader reader = new FileReader(path); 初步分析 檢查下來發現,path實際對應的是一個文件夾,而不是文件。 文件來源關鍵 ...
報錯信息
如題, cn.hutool.core.io.IORuntimeException: Not a file....
報錯位置
FileReader reader = new FileReader(path);
初步分析
檢查下來發現,path實際對應的是一個文件夾,而不是文件。
文件來源關鍵代碼(FileUtil、FileWriter都是出自hutool工具包)
FileUtil.mkdir(new File(...));
FileWriter writer = new FileWriter(".....json");
writer.write(str);
結合官方文檔
此方法不對File對象類型做判斷,如果File不存在,無法判斷其類型
個人看法,這句話可以理解成,mkdir方法返回的,有可能是文件,也有可能是文件夾。
目前,筆者在三臺電腦上跑過這段代碼,一臺window台式機A,兩台linux伺服器B和C。
其中,一開始在A和B上跑時,創建出來的都是文件,但之後在C上跑創建出來的卻是文件夾。
總結
工具雖好用,自己也得多註意思考。