首页 > Windows开发 > 详细

关于文件操作中,在windows上正常,在linux上“No such file or directory”异常

时间:2021-05-10 20:28:36      阅读:38      评论:0      收藏:0      [点我收藏+]

关于文件操作中,在Windows上正常,在linux上“No such file or directory”异常

最近在项目中负责文件系统的功能编写。包括文件的上传、下载和部分文件的预览功能实现。

在开发过程中程序能够正常运行,但是项目部署到了测试环境linux系统时,出现文件上传后无法下载的情况,后面查看日志,发现报“No such file or directory”,因为在开发环境中是正常的,所以一时没有发现问题所在,后面通过详细的查看日志,发现是文件路径出错了,才了解到是Windows和linux系统的文件路径有差别,在Windows中,”\“和”/“都能正常识别,而在Linux系统中,只能使用”/“来代表文件路径。后面通过学习,发现早已有解决这个问题,File类中的separator就是用来表示路径分隔符的,可以完美适应系统,所以我把代码中的”\“都改成了File.separator,系统就正常运行了。

比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写:

File file1 = new File ("C:\tmp\test.txt");

在Linux下则是这样的:

File file2 = new File ("/tmp/test.txt");

如果要考虑跨平台,则最好是这么写:

File myFile = new File("C:" + File.separator + "tmp" + File.separator + "test.txt");

关于文件操作中,在windows上正常,在linux上“No such file or directory”异常

原文:https://www.cnblogs.com/hooong/p/14752107.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!