!!!急~奇怪问题,请大侠指教,多谢!!! 原来的文件是乱码?那你怎么知道内容不一样?如果原文件有汉字,你认为getBytes()能读出汉字来吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 应该不会吧,要用一个ByteArrayInputStream,应该要用String来转换成byte[]的! 你用输入输出流试一试吧,InputStream肯定可以解决这个问题,他有一个方法可以把字节读入到一个数组中 首先,你这个resource文件是不是文本文件?如果不是,不讨论怎么变成String,因为根本不能够。如果是文本文件,你必须知道它的ecoding charset.然后用InputStreamReader(new FileInputStream("file name"), "encoding charset")。如果你不知道他的ecoding,也不讨论怎么变成String,因为你还是不能。任何文件,不管是text or binary,都是文件,所以都可以用流读出来,但是拿着流又怎么样?所以,读resource时,先要知道resource file的性质。 谢谢各位。我现在能把这个文件写到字符数组中,这样:FileInputStream fis1 = new FileInputStream("out.txt"); byte[] zipped=new byte[fis1.available()]; fis1.read(zipped);其实我的out.txt是通过把一串字符通过一个压缩算法压缩后,一个字节一个字节的写入的一个文件,现在就是想把它再原封不动的写回到字符数组中,进行解压。可是我发现写到字符数组中的文件已经变了,而且象hayai(生命树)所说的,我也并不知道encoding charset。但我觉得都是用字符去读写,应该不会变啊可是现在压缩后写入文件内容是“x?+L??(??515?12?315?16?331?4?444?03577?))*M¥*??4"Z?1!? ??”写入字符数组后内容就成了“x?+L??(??515?12?315?16?331?4?444?03577?))*M??*??4"Z?1!? ??”这样,压缩算法我试过,压后直接就对数组解压是没有问题的。请大家帮忙啊我实在是没有办法了~~ 问题解决了,谢谢大家的热心帮助!只要用同样的FILESTREAM读写,不用BUFFERED读写就可以了!给大家分~ 帮忙分析个正则表达式~~ 实在想不出来 jdk-1_5_x-rc-linux-i586-rpm.bin 很菜的问:关于对象作为参数传递 求高手点拨一个“MyEclipse编辑Java代码的”“基功问题”。 能用APPLET读取服务器端文件内容吗?如何实现? 十万火急求助?liunux+tomcat+8080 如何在jdk中添加/设置cocoon2.1的类库,可以免去在classpath中的设置,同时可以使得cocoon正常运行?在线等待 有谁知道哪有下载 JB6 的地方?谢谢 控件的定位/鼠標指針隱藏(Applet) jtree图标问题 请问用什么工具学习,编译java程序比较好?
任何文件,不管是text or binary,都是文件,所以都可以用流读出来,但是拿着流又怎么样?所以,读resource时,先要知道resource file的性质。
FileInputStream fis1 = new FileInputStream("out.txt");
byte[] zipped=new byte[fis1.available()];
fis1.read(zipped);
其实我的out.txt是通过把一串字符通过一个压缩算法压缩后,一个字节一个字节的写入的一个文件,现在就是想把它再原封不动的写回到字符数组中,进行解压。
可是我发现写到字符数组中的文件已经变了,而且象hayai(生命树)所说的,我也并不知道encoding charset。但我觉得都是用字符去读写,应该不会变啊
可是现在压缩后写入文件内容是“x?+L??(??515?12?315?16?331?4?444?03577?))*M¥*??4"Z?1!? ??”
写入字符数组后内容就成了“x?+L??(??515?12?315?16?331?4?444?03577?))*M??*??4"Z?1!? ??”这样,压缩算法我试过,压后直接就对数组解压是没有问题的。
请大家帮忙啊
我实在是没有办法了~~
只要用同样的FILESTREAM读写,不用BUFFERED读写就可以了!
给大家分~