java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > java.io.FileNotFoundException报错

linux部署出现java文件操作报错:java.io.FileNotFoundException解决办法

作者:流连勿忘返

这篇文章主要g介绍了linux部署出现java文件操作报错:java.io.FileNotFoundException解决的相关资料,这个错误通常表示你的Spring Boot应用程序无法找到指定的文本文件,需要的朋友可以参考下

1.报错场景:

其中的 ip2region.xdb 文件是放在 resources 文件夹中的,然后在一个工具类里面读取这个文件,在开发环境中的是这样读取的: 

            ClassPathResource resource = new ClassPathResource("ip2region.xdb");
            //获取真实文件路径
            String path = resource.getURL().getPath();
            byte[] cBuff = Searcher.loadContentFromFile(path);

然后部署到linux上后,就出现了错误,报 java.io.FileNotFoundException 

2.解决方法:

            ClassPathResource resource = new ClassPathResource("ip2region.xdb");
            InputStream inputStream = resource.getInputStream();
            byte[] bytes = IOUtils.toByteArray(inputStream);

在部署环境,要使用 InputStream inputStream = resource.getInputStream(); 这个方法

3.用java读取linux系统上的指定文件

File file = new File("/usr/webapps/MP/ip2region.xdb");
            if (file.exists()) {
                System.out.println("文件存在");
            } else {
                System.out.println("文件不存在");
            }
            if (file.isFile()) {
                System.out.println("是一个文件");
            } else {
                System.out.println("不是一个文件");
            }
            if (file.canRead()) {
                System.out.println("可读");
            } else {
                System.out.println("不可读");
            }
            if (file.canWrite()) {
                System.out.println("可写");
            } else {
                System.out.println("不可写");
            }

总结 

到此这篇关于linux部署出现java文件操作报错:java.io.FileNotFoundException解决办法的文章就介绍到这了,更多相关:java.io.FileNotFoundException报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文