我有一个关于 Java File 类的问题。例如,当我创建一个 File 实例时,
File aFile = new File(path);
Run Code Online (Sandbox Code Playgroud)
实例 aFile 存储在计算机中的什么位置?或者它存储在JVM中?我的意思是有一个临时文件存储在本地磁盘中吗?
例如,如果我有一个 InputStream 实例,并使用 OutputSteam 将其写入文件
File aFile = new File("test.txt");
OutputStream anOutputStream = new FileOutputStream(aFile);
byte aBuffer[] = new byte[1024];
while( ( iLength = anInputStream.read( aBuffer ) ) > 0)
{
anOutputStream.write( aBuffer, 0, iLength);
}
Run Code Online (Sandbox Code Playgroud)
现在文件 test.txt 存储在哪里?
提前致谢!
一个File
对象根本不是一个真正的文件——它实际上只是一个文件名/位置,以及挂接到文件系统以检查文件是否真的存在等的方法。没有与实例直接关联的内容File
——它不像例如,它是一个虚拟内存文件。实例本身只是内存中的一个对象,就像任何其他对象一样。
单独创建一个File
实例对文件系统没有任何影响。
FileOutputStream
但是,当您创建. 时,这确实会影响您正在写入的任何文件系统。File
尽管该实例相对无关 - 您会从以下方面获得相同的效果:
OutputStream anOutputStream = new FileOutputStream("test.txt");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3108 次 |
最近记录: |