【BUG日记】【JAVA】把当前目录下的文件内容进行清空,权限不足。报错java.io.FileNotFoundException: xxx.txt 拒绝访问。

简介: 【BUG日记】【JAVA】把当前目录下的文件内容进行清空,权限不足。报错java.io.FileNotFoundException: xxx.txt 拒绝访问。

【有话先说】


笨蛋了,半天才知道原来是之前对这个文件进行了设置只可读...


【日期】


2022/3/5


【问题】


把当前目录下的文件内容,进行清空,权限不足。拒绝访问


并且出现报错:java.io.FileNotFoundException: \html\1.txt 拒绝访问。


微信截图_20220520114131.png


【原因】


之前对这个文件进行了设置只可读...


微信截图_20220520114143.png


【如何发现】


思考来思考去,其他文件也没问题的呀,最后一对比,一想起,才知道设置了只读...


【如何修复】


把只读的√去掉!!!


微信截图_20220520114153.png


【总结】


好好写bug, 天天找bug~


【代码分享】


public static void main(String[] args) {
    initFile("/html");
  }
  /**
   * 文件重新写内容
   * 
   * @Method: setTextFile
   * @author: nanfangzhe
   * @see: https://juejin.cn/user/2840793779295133
   * @date: 2022年3月5日
   * @param filePath
   */
  public static void setTextFile(String filePath, String text) {
    File file = new File(filePath);
    try {
      if (!file.exists() || !file.isFile()) { // 如果文件不存在
        return;
      } else {
        Writer w = new FileWriter(filePath, false);// 写入的文本不附加在原来的后面而是直接覆盖
        w.write(text); // 写空
        w.close();
      }
    } catch (Exception e) {
      System.out.println("-----------清空文件出错了!" + filePath + "-----------");
      e.printStackTrace();
    }
  }
  /**
   * 初始化文件
   * 
   * @Method: initFile
   * @author: nanfangzhe
   * @see: https://juejin.cn/user/2840793779295133
   * @date: 2022年3月5日
   */
  public static void initFile(String userFoldPath) { // 初始化当前下所有的文件
    File file = new File(userFoldPath); // 访问当前目录
    if (!file.isDirectory()) {
      return; // 返回
    }
    File[] dirFile = file.listFiles();
    for (File f : dirFile) { // 遍历当前目录下所有文件
      if (!f.isFile()) {// 不是文件跳过
        continue;
      }
      setTextFile(f.getPath(), "");
    }
  }


文章小尾巴


文章写作、模板、文章小尾巴可参考:《写作“小心思”》


  感谢你看到最后,最后再说两点~


  ①如果你持有不同的看法,欢迎你在文章下方进行留言、评论。

  ②如果对你有帮助,或者你认可的话,欢迎给个小点赞,支持一下~


  我是南方者,一个热爱计算机更热爱祖国的南方人。


  (文章内容仅供学习参考,如有侵权,非常抱歉,请立即联系作者删除。)



目录
相关文章
|
6月前
|
Java Unix Go
【Java】(8)Stream流、文件File相关操作,IO的含义与运用
Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中。!但本节讲述最基本的和流与 I/O 相关的功能。我们将通过一个个例子来学习这些功能。
264 1
|
6月前
|
JSON Java 数据格式
java调用服务报错400
java调用服务报错400
149 6
java调用服务报错400
|
6月前
|
JSON Java 数据格式
java调用服务报错415 Content type ‘application/octet-stream‘ not supported
java调用服务报错415 Content type ‘application/octet-stream‘ not supported
372 6
|
7月前
|
安全 架构师 Java
90% Java新手踩坑!彻底搞懂这4个权限修饰符
Java权限修饰符看似简单,却暗藏致命风险:`public`暴露数据、`protected`跨包失控、默认权限成地雷。本文通过3大真实案例+1张神图,深度解析`private`、`default`、`protected`、`public`的作用域与内存可见性,揭示Spring Bean、继承陷阱、包级漏洞的根源,并奉上防御性编程5大原则,助你筑牢代码第一道防线。
310 1
|
7月前
|
Java API 开发工具
【Azure Developer】Java代码实现获取Azure 资源的指标数据却报错 "invalid time interval input"
在使用 Java 调用虚拟机 API 获取指标数据时,因本地时区设置非 UTC,导致时间格式解析错误。解决方法是在代码中手动指定时区为 UTC,使用 `ZoneOffset.ofHours(0)` 并结合 `withOffsetSameInstant` 方法进行时区转换,从而避免因时区差异引发的时间格式问题。
349 4
|
8月前
|
Java 测试技术 API
Java IO流(二):文件操作与NIO入门
本文详解Java NIO与传统IO的区别与优势,涵盖Path、Files类、Channel、Buffer、Selector等核心概念,深入讲解文件操作、目录遍历、NIO实战及性能优化技巧,适合处理大文件与高并发场景,助力高效IO编程与面试准备。
|
8月前
|
SQL Java 数据库连接
Java IO流(一):字节流与字符流基础
本文全面解析Java IO流,涵盖字节流、字符流及其使用场景,帮助开发者理解IO流分类与用途,掌握文件读写、编码转换、异常处理等核心技术,通过实战案例提升IO编程能力。
|
8月前
|
Android开发
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
482 4
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
|
安全 Java API
JAVA三种权限认证框架的搭建方法
SaToken、JustAuth和MaxKey是三个用于身份认证和权限管理的工具。SaToken是轻量级框架,简化登录、权限、OAuth2.0等认证,适合中小型项目;JustAuth是第三方授权登录库,支持多种社交平台,易于集成;MaxKey是企业级IAM产品,提供复杂的权限管理和统一认证,支持多种标准协议及社交账号集成。
1530 1