【问题标题】:Reading a file created using virtual filesystem JIMFS读取使用虚拟文件系统 JIMFS 创建的文件
【发布时间】:2016-08-19 18:05:26
【问题描述】:

我使用 JIMFS 创建了一个 VFS。

FileSystem virtualFS = Jimfs.newFileSystem(Configuration.unix());
Path virtualPath = virtualFS.getPath("resources/virtualFolder");
Files.createDirectories(virtualPath);
Path refData = virtualPath.resolve("refData.csv");
System.out.println(refData);

Files.write(refData, ImmutableList.of(sData),StandardCharsets.UTF_8);

我正在尝试以另一种方法读取文件 (refData.csv)(路径传递给另一种方法)。

到目前为止我尝试过的是:

1: new FileDataModel(new FileInputStream(Files.lines(refData)));

2: new FileDataModel((File) Files.lines(refData));

3: new FileDataModel(new File(refData));

不幸的是,目前这些都不起作用。我了解,我将默认 FS 与虚拟 FS 混合使用。

Error: Exception in thread "main" java.lang.UnsupportedOperationException

如何访问创建的文件?

【问题讨论】:

    标签: java java-io virtualfilesystem jimfs


    【解决方案1】:

    FileFileInputStream 除了默认文件系统外,什么都不能工作。您需要的是 FileDataModel 的构造函数的一个版本,它采用 Path 或普通的 InputStream(您可以使用 Files.newInputStream(Path)Path 获取 InputStream)。

    (顺便说一句,Files.lines 返回一个Stream,而不是File,所以我不确定你要在那里做什么。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多