代码之家  ›  专栏  ›  技术社区  ›  Lydon Ch

Java文件发布资源

  •  2
  • Lydon Ch  · 技术社区  · 14 年前

    我使用的是SpringFramework Web MVC,在servlet handleRequestInternal中,我创建了一个变量来访问本地文件系统中的文件,即。

    protected ModelAndView handleRequestInternal(HttpServletRequest request,......
    {
    ......
     File file = new File(rssPath);
     if( !file.exists() ) {
      file.createNewFile();
      FileWriter outFile = new FileWriter(rssPath);
      outFile.write(rssJson);
      outFile.flush();
      //file = null;
     }
    }
    

    我得等几秒钟,可能等GC来取。

    在查看文件API时,我没有看到像close()这样的方法来释放资源。

    2 回复  |  直到 11 年前
        1
  •  5
  •   Christian Kuetbach    14 年前

    你不能关闭文件。但你必须关闭 FileInputStream , FIleOutputStream , FileReader FileWriter . 否则这些流(和文件句柄)将不会被GCed。(直到持有流的对象被GCed)

    编辑: 在一个 finally

        2
  •  4
  •   Raghuram    14 年前

    怎么样 close() FileWriter对象上的方法?

    outFile.close();