我经历了一个java教程,允许我创建一个文本文件并在其中写下"20 Bruce Wayne".在主类中调用的最后一个方法名为closeFile(),它在创建后"关闭"文本文件.
如果我没有真正打开它,为什么文件需要"关闭"?通过"打开",我的意思是记事本编辑器(不是我正在使用的IDE)弹出"20 Bruce Wayne"字样.请以外行的方式回答我的问题.
Main.java:
class apple {
public static void main(String[] args)
{
createfile g = new createfile();
g.openFile();
g.addRecords();
g.closeFile();
}
}
Run Code Online (Sandbox Code Playgroud)
createfile.java
public class createfile {
private Formatter x;
public void openFile(){
try{
x = new Formatter("supermanvsbatman.txt");
}
catch(Exception e){
System.out.println("you have an error");
}
}
public void addRecords(){
x.format("%s%s%s","20 ", "Bruce ", "Wayne ");
}
public void closeFile(){
x.close();
}
}
Run Code Online (Sandbox Code Playgroud)
当文件被"打开"时,操作系统会将文件标记为已锁定,通常在使用时不会被其他进程删除.x.close()撤消锁定,允许操作系统和其他进程按照文件的意愿执行操作.
除了售罄活动家的答案,当您使用文件等i/o操作时,您正在使用流向文件添加文本,或从文件中提取文本.当您退出程序时,必须使用方法close()关闭此流,因为您可能会丢失数据.这就像保存操作,如果您不保存文件(关闭流),您将丢失对文件所做的更改.
| 归档时间: |
|
| 查看次数: |
29848 次 |
| 最近记录: |