首页 > 其他分享 >关于流的关闭注意事项

关于流的关闭注意事项

时间:2024-01-24 10:47:02浏览次数:26  
标签:... stream private 关于 关闭 注意事项 close txt

private void readTheFile() throws IOException {
  Path path = Paths.get(this.fileName);
  BufferedReader reader = Files.newBufferedReader(path, this.charset);
  // ...
  reader.close();  // Noncompliant
  // ...
  Files.lines("input.txt").forEach(System.out::println); // Noncompliant: The stream needs to be closed
}

这里流的关闭有问题,看似关闭了,但是在代码的执行过程中可能会出现报错之类的情况,导致流未能关闭,所以要在finally里面关闭
private void doSomething() {
  OutputStream stream = null;
  try {
    stream = new FileOutputStream("myfile.txt");
    for (String property : propertyList) {
      // ...
    }
  } catch (Exception e) {
    // ...
  } finally {
    stream.close();
  }
}

try-with-resources也可以,但是我不会用或者说用的不熟练。

标签:...,stream,private,关于,关闭,注意事项,close,txt
From: https://www.cnblogs.com/bulesea/p/17984086

相关文章

  • Linux防火墙操作命令(开放或关闭端口)
    在外部访问CentOS中部署应用时,需要通过防火墙管理软件,开端口,或者直接关闭防火墙进行解决(不建议)常用命令:systemctlstartfirewalld        #启动systemctlstopfirewalld        #停止systemctlstatusfirewalld      #查看状态......
  • 关于springboot 域认证
    最近项目,客户要求实现域认证,然后登录。网上资料自己整理一下,以备后续使用;springboot域认证,我采用的是ldap方式认证。1.引入插件:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-ldap</artifactId......
  • 关于如何防止重复订单提交
    这是个面试中非常常见的问题,也是并发请求中常见的情况,对于数据的一致性有很高要求系统都是要做的主要有以下四个解决思路:1、提交订单按钮置灰,短时间内不可重复提交;2、后端预生成全局唯一订单号。前端进入下单页面去请求获取该订单号,然后下单,后端通过此唯一订单号进行处理,已处理......
  • .NET Framework中关于WPF的更新信息
    .NETFramework3.0版中的新增功能更新:2007年11月单独发布.NETFramework3.0版是为了在.NETFramework和Windows软件开发包(SDK)中包含以下技术。WindowsCommunicationFoundationWindowsPresentationFoundationUnderstandingWindowsWorkflowFoundation......
  • 关于spring.redis.cluster集群部分Master节点故障后 交易中断60秒解决方案
     背景  第一种方案:公司项目做性能测试,redis集群选用cluster集群模式,开始选用3主3从,共3台服务器,每个服务器一主一从。    服务器A  redis8001 8002    服务器B  redis8003 8004     服务器C  redis8005 8006    8001主    ......
  • PA0:关于剩余练习3
    42、44: 1/19 栈和队列栈的特点:先入先出,后入后出。出口也是入口,另一端封闭。 队列:一头入,另一头出(非传统队列也有一端可出入,另一端出的设计)、这个练习的要求说实话有点奇怪,不准写.c,只写.h头文件来满足单元测试,看具体的要求,它要求基于之前的list来实现栈和队列,但是又不让用.......
  • 关于变元极性选择策略
    1.2023年最新的一篇文献 New Boolean satisfiability problem heuristic strategy: Minimal Positive Negative Product Strategy@article{DBLP:journals/corr/abs-2310-18370,author={QunZhaoandXintaoWangand......
  • vue3中Fragment特性的一个bug,需要留意的注意事项
    vue3中的Fragment模版碎片特性是什么,简单的理解就是template模板代码不在像vue2中那样必须在根节点在包裹一层节点了。vue2写法<template><div><h1>标题</h1><p>正文内容</p></div></template>vue3写法<template><h1>标题</h1>......
  • 关于Java 数组
    了解Java数组Java中的数组是一种强大而灵活的数据结构,让我们一起深入探讨它的方方面面,从基础的概念到高级的应用。1.数组的创建与初始化首先,我们来看如何创建和初始化一个简单的整型数组:publicclassArrayExample{publicstaticvoidmain(String[]args){......
  • 关于我
    Tips:\(\texttt{Winningisn'teverything,butwantingitis}\)获胜并不能代表一切,而求胜心则可以。我的各大OJ账号:AcWing:https://www.acwing.com/user/myspace/index/276481/Hydro:https://hydro.ac/user/10699OpenJudge:http://openjudge.cn/user/1137680/洛谷:https......