java创建文本文件,对文件进行tar并将其放入inputstream?
我想将一个只包含一个字符串的文本文件放入tar存档,并将这个tar文件放入inputstream。。。我想做这个“在飞行”,而不保存任何临时文件到磁盘上
我尝试了这个片段,最后得到了一个文件:
FileOutputStream fos = null;
try {
fos = new FileOutputStream ("helloworld.txt");
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
ByteArrayOutputStream baos = new ByteArrayOutputStream();
String config = "HelloWorld!";
byte[] b = config.getBytes();
try {
baos.write(b);
baos.writeTo(fos);
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我看了一下jtar库: https://code.google.com/p/jtar/
所以我想把这个文本文件直接放到tar中,但我也不需要新的FileOutputStream(“c:/test/test.tar”),而是想把它直接放到inputstream中
我对所有这些inputstreams/outputstreams有点困惑,我不确定是否有可能在这些流中移动,而不是创建临时文件来执行此操作
THX&;溴
# 1 楼答案
我不确定这是否是最好的方法,但这似乎有效,但与我想象的不完全一样:
# 2 楼答案
只要去掉
FileOutputStream
和bos.writeTo()
,然后做:相反