如何在内存中(而不是在硬盘上)创建新的File
(由java.io
)?
我正在使用Java语言。我不想将文件保存在硬盘上。
我遇到了一个错误的API(java.util.jar.JarFile
)。期待File file
着String filename
。我没有文件(只有byte[]
内容),可以创建临时文件,但这不是一个漂亮的解决方案。我需要验证签名罐子的摘要。
byte[] content = getContent();
File tempFile = File.createTempFile("tmp", ".tmp");
FileOutputStream fos = new FileOutputStream(tempFile);
fos.write(archiveContent);
JarFile jarFile = new JarFile(tempFile);
Manifest manifest = jarFile.getManifest();
在不创建临时文件的情况下如何获得清单的任何示例将不胜感激。
8
因此,您只需要内存中的字节?
—
Sotirios Delimanolis
您打算如何处理
—
乔恩·斯基特
File
?
根据
—
Uwe Plonus
File
定义,A 位于硬盘驱动器上。
如果您不希望在持久性内存中创建文件,那有什么意义呢?
—
Bhavik Shah 2013年
哇,对StackOverflow缺乏想象力令人震惊。某些人可能需要简单的内存文件,因为他们正在使用需要文件的接口。该接口应该已经为InputStream编写,但事实并非如此。临时文件似乎有点过分,因此最好使用内存中的java.io.File。
—
Novaterata