【发布时间】:2015-10-25 07:18:09
【问题描述】:
我正在使用专有的 Java API(源代码未公开),该 API 在其接口之一中定义了一个方法:
Foo.bar(String fileName, String formatName);
这个方法的问题是它需要一个String fileName。我希望有一种方法可以采用 File file 或某种 stream 代替,但这种方法不存在。反编译 .class 文件显示 API 在内部执行了 new File(fileName),但模仿其整个行为太吓人且风险太大。
在我的代码中,我创建了一个流,我希望能够调用bar() 而无需先将任何内容写入磁盘(至少不是物理上的)。
有什么办法可以欺骗Foo.bar() 接受我的信息流吗?也许通过在 Java 中利用一些虚拟文件系统?
我们在这方面使用的是 Java 1.7。
【问题讨论】:
标签: java file path stream filesystems