6

我有实例FileOutputStream,我想写文件。

执行我的代码后,我在文件系统上找不到文件。

也许FileOutputStream有我会知道它写在哪里的方法?

4

5 回答 5

9

当您调用构造函数时,您决定文件的位置。

new FileOutputStream("path/to/my/file.txt");

有几个类似的构造函数。您也可以传递例如 File 或 FileDescriptor 参数。只需阅读 Java API 文档。

http://docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html

于 2013-10-03T11:36:50.943 回答
2

创建FileOutputStream实例时,您将给出File对象或String path(带有文件名的绝对路径)或FileDescriptor对象。该路径是放置文件的位置。

查看FileOutputStream的各种构造函数并检查您使用的是哪个构造函数。

于 2013-10-03T11:38:03.983 回答
1
FileOutputStream(File file)
Creates a file output stream to write to the file represented by the specified File object.
FileOutputStream(File file, boolean append)
Creates a file output stream to write to the file represented by the specified File object.
FileOutputStream(FileDescriptor fdObj)
Creates a file output stream to write to the specified file descriptor, which represents an existing connection to an actual file in the file system.
FileOutputStream(String name)
Creates a file output stream to write to the file with the specified name.
FileOutputStream(String name, boolean append)
Creates a file output stream to write to the file with the specified name.

所有重载的构造函数都采用文件名。如果文件在绝对路径中不存在,则创建一个新文件。如果没有提供绝对路径,则文件将被装箱在当前目录中。

于 2013-10-03T11:39:53.493 回答
1

我刚开始在一个 RESTful 服务项目上使用 Java。我已使用 FileOutputStream 写入文件但找不到该文件。我的操作系统是 Windows,我正在使用 Eclipse。我终于在我的电脑上找到了“eclipse.exe”所在的文件。如果我没有提供绝对路径,看起来 Java 类将文件存储在那里。在您的情况下可能会有所不同。这是一个如此古老的帖子,但我觉得即使现在我也看到一些帖子在问类似的问题,所以我想回复一下。

于 2018-08-09T03:15:18.147 回答
0

FileOutputStream 对象的构造函数采用不同的参数。其中之一是文件路径的字符串。另一个是 File 对象,在这种情况下,您在创建该 File 对象时定义了文件的路径。

于 2013-10-03T11:38:25.640 回答