【java笔记】cn.hutool.core.io.IORuntimeException Not a file。。。
报错信息
如题, 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上跑创建出来的却是文件夹。
总结
工具虽好用,自己也得多注意思考。