当前位置: 首页 > 知识库问答 >
问题:

使用Apache Commons VFS RAM文件以避免使用API需要文件的文件系统

邹玄裳
2023-03-14

这篇文章有一个高度支持的评论:

如何创建新java。io。内存中的文件?

其中,Sorin Postelnicu提到使用Apache Commons VFS RAM文件作为一种将内存中的文件传递给需要java的API的方法。io。文件(我正在解释……我希望我没有错过要点)。

在阅读相关帖子的基础上,我提出了以下示例代码:

    @Test
    public void working () throws IOException {

        DefaultFileSystemManager manager = new DefaultFileSystemManager();
        manager.addProvider("ram", new RamFileProvider());
        manager.init();
        final String rootPath = "ram://virtual";
        manager.createVirtualFileSystem(rootPath);

        String hello = "Hello, World!";
        FileObject testFile = manager.resolveFile(rootPath + "/test.txt");
        testFile.createFile();

        OutputStream os = testFile.getContent().getOutputStream();

        os.write(hello.getBytes());
        //FileContent test = testFile.getContent();

        testFile.close();

        manager.close();

    }

所以,我想我有一个内存文件叫做ram://virtual/test.txt内容为“你好,世界!”

我的问题是:如何将这个文件与需要java的API一起使用。io。文件

共有1个答案

戚飞雨
2023-03-14

Java的文件API始终适用于本机文件系统。因此,如果没有本机文件系统上的文件,就无法将VFS的文件对象转换为文件。

但是如果您的API也可以与InputStream一起使用,还有一种方法。大多数库通常都有采用InputStreams的重载方法。在这种情况下,应该可以使用以下方法

InputStream is = testFile.getContent().getInputStream();
SampleAPI api = new SampleApi(is);
 类似资料:
  • 问题内容: 我可以在不生成编译的.pyc文件的情况下运行python解释器吗? 问题答案: 来自“ Python 2.6的新增功能- 解释器更改” : 现在,可以通过向Python解释器提供-B开关,或者通过在运行解释器之前设置 PYTHONDONTWRITEBYTECODE环境变量来阻止Python编写.pyc或.pyo文件。此设置可作为Python程序的 变量使用,并且Python代码可以更改

  • 问题内容: 我有完整的文件路径,我想获取文件名。 我正在使用以下指令: 但是在Windows上它提供了: 我可以避免这种例外吗?有一个更好的方法吗? 问题答案: 问题是必须转义才能在正则表达式 中将 其 用作反斜杠 。您应该使用 不 使用正则表达式 的拆分API __ ,或者首先使用: 甚至更好,为此使用API:

  • 1.1 文件概述 Python 能够以文本和二进制两种方式处理文件。文本文件一般由单一特定编码的字符组成,例如 UTF-8 编码,内容容易统一展示和阅读。二进制文件直接由比特0和1组成,没有统一字符编码。二进制文件和文本文件最主要的区别在于是否有统一的字符编码。二进制文件由于没有统一字符编码,只能当做字节流,而不能看作是字符串。 1.2 文件的打开和关闭 Python 通过解释器内置的 open(

  • 问题内容: 我一直在阅读其他文章,但没有设法解决我的查询。 使用顺序查询要慢20倍,我必须改进它。这是查询: 这些是表(已更新): 使用默认顺序时,它仅使用 index和where ,并使用 index,where,temporary和filesort。 如何使查询按顺序接收结果,而无需文件排序和临时排序。 更新: 我进行了一个新的查询,没有临时或文件排序,但 类型:索引 ,已筛选:7340.00

  • 本文向大家介绍vuejs 单文件组件.vue 文件的使用,包括了vuejs 单文件组件.vue 文件的使用的使用技巧和注意事项,需要的朋友参考一下 vuejs 自定义了一种.vue文件,可以把html, css, js 写到一个文件中,从而实现了对一个组件的封装, 一个.vue 文件就是一个单独的组件。由于.vue文件是自定义的,浏览器不认识,所以需要对该文件进行解析。 在webpack构建中,需