如何读写jar包里面的文件

wthwebbe 2005-09-08 07:28:14
小弟有1个文件打在jar包里面 a.txt。。读的话没有问题用class.getResourceAsStream(String s);
但是如何写这个文件呢?直接用File file= new File("a.txt");好象不能读jar包里面的
URI uri = class.getResource("a.txt").toURI();
File file=new File(uri);
也不能弄到jar包里面。。
到底应该如何做。。

谢谢大家了
...全文
523 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pvii 2005-12-10
  • 打赏
  • 举报
回复
楼主
问一下
在类read_a_txt被并入某个jar后,其中
...
new BufferedReader( new InputStreamReader(Class.getResourceAsStream("a.txt")));
...
是对与read_a_txt处在同一目录下(或者是同一包下)的a.txt进行读入。
要是改成这样
...
new BufferedReader( new InputStreamReader(Class.getResourceAsStream("dir/a.txt")));
...
为什么不能对类read_a_txt下的一个目录(或是包)内的a.txt进行读呢?

wthwebbe 2005-09-10
  • 打赏
  • 举报
回复
发现问题。。用zzhzzh204553(真的好想你) 代码写zip的时候。。会把其他文件都delete。。zip包里面只剩下你自己写入的那个文件。。。如何保留原来的文件啊??!!只对需要的文件做修改
qingzhu999 2005-09-09
  • 打赏
  • 举报
回复
公关广告
wthwebbe 2005-09-09
  • 打赏
  • 举报
回复
对于写还有问题。。我想写ObjectOutputStream那样写object到jar里面的文件的话应该如何操作啊

读。。我有了
可以用getClass().getResourceAsStream()拿到InputStream
然后用ObjectInputStream读
believefym 2005-09-08
  • 打赏
  • 举报
回复
楼上的好像只是写jar文件吧,楼主要的是读包里的某个文件
zzhzzh204553 2005-09-08
  • 打赏
  • 举报
回复
使用ZIP输出流,JAR其实就是ZIP文件,
只是多了一些信息.下面是代码.

/*
*Zip流可以输出到文件,套接字,字符串或者字节数组.
*/

package OutputStream;
import java.io.*;
import java.util.zip.*;

public class ZipOutputStreamDemo
{
ZipOutputStream zip;

public ZipOutputStreamDemo(String name) throws java.io.IOException{
zip = new ZipOutputStream(
new BufferedOutputStream(
new FileOutputStream(name)));
}

public void writeFile(String name) throws java.io.IOException{
//加入一个zip条目
zip.putNextEntry(new ZipEntry(name));

BufferedReader in = new BufferedReader(
new FileReader(name));

int c;
while((c=in.read())!=-1){ //读入一个字符直到EOF
zip.write(c); //写入刚才读到的字符.
}

}

public static void main(String[] args) throws java.io.IOException{
//生成的zip文件将被存放的目录
ZipOutputStreamDemo demo = new ZipOutputStreamDemo("OutputStream/code.jar");
//zip里被压缩的文件的目录.
demo.writeFile("OutputStream/ZipOutputStreamDemo.java");
demo.zip.close();
}
}

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧