在java中打开文件后会发生什么
假设使用JFilechooser,我们选择了一个包含1行的文本文件,比如。。。“你好,世界” 当我们打印文件内容时,我们会得到“hello world”在java中打开文件后会发生什么,java,file,Java,File,假设使用JFilechooser,我们选择了一个包含1行的文本文件,比如。。。“你好,世界” 当我们打印文件内容时,我们会得到“hello world” 但是,如果我们更改了文本文件的内容并添加了一些新行,然后再次打印,会发生什么呢?java是否将文件存储在内存中?或者它会再次读取它,然后打印我们添加的新行?当您创建文件时,实际上什么都不会发生。文件的位置是存储的,没有其他内容。这就像设置GPS去某个地方,而不是开车去那里 从Javadoc: 文件和目录路径名的抽象表示 当您从文件中读取时,您将
但是,如果我们更改了文本文件的内容并添加了一些新行,然后再次打印,会发生什么呢?java是否将文件存储在内存中?或者它会再次读取它,然后打印我们添加的新行?当您创建
文件时,实际上什么都不会发生。文件的位置是存储的,没有其他内容。这就像设置GPS去某个地方,而不是开车去那里
从Javadoc:
文件和目录路径名的抽象表示
当您从文件中读取时,您将获得文件的内容。这取决于您的操作。规则很简单:当您使用FileInputStream
或FileReader
再次阅读时,您将始终获得最新的内容。如果文件未经编辑,操作系统可能会在内存中对此进行优化。如果您只是将文件内容保存在自行构建的缓冲区中(例如:一个字符串或一个字节[]
),并且文件发生了变化,那么缓冲区当然会保持不变。是的,我在回答中添加了:)
File file = new File("someFile.txt")