为了账号安全,请及时绑定邮箱和手机立即绑定

谁能帮忙看下我的javaIO字节流的相关问题,谢谢了

谁能帮忙看下我的javaIO字节流的相关问题,谢谢了

aiguo94 2016-04-08 09:36:03
package lianxi; import java.io.FileInputStream; import java.io.IOException; public class IOUtil { /**  * 读取指定文件内容,按照16进制输出到控制台  * 并且每输出十个byte换行  * @param fileName  */ public static void printHex(String fileName) throws IOException{ //把文件作为字节流进行读操作 FileInputStream in=new FileInputStream(fileName); int b; int i=1; while((b=in.read())!=-1){ if(b<=0xf){ //单 位数前面补0 System.out.print("0"); } System.out.print(Integer.toHexString(b)+"  ");//将整型b转换为16进制表示的字符串 if(i++%10==0){ System.out.println(); } } in.close(); } public static void printHexByByteArray(String fileName) throws IOException{ FileInputStream in=new FileInputStream(fileName); byte[] buf=new byte[20*1024]; /**  * 从in中批量读取字节,放入到buf这个字节数组中,从第0个位置开始放,  * 最多放buf.length个。返回的是读到的字节的个数  */ int bytes=in.read(buf,0,buf.length);//一次性读完,说明这个字节数组足够大 int j=1; for(int i=0;i<bytes;i++){ if(buf[i]<=0xf){ System.out.print("0"); } System.out.print(Integer.toHexString(buf[i])+"  "); if(j++%10==0){ System.out.println(); } } in.close(); } }------》这个是IOUtil类package lianxi; import java.io.IOException; public class IOUtilTest1 { public static void main(String[] args) { try { IOUtil.printHex("e:\\wordstudy\\hello.txt"); } catch (IOException e) { e.printStackTrace(); } } }-----》这个是IOUtilTest1类,是测试IOUtil类的第一个方法的测试类package lianxi; import java.io.IOException; public class IOUtilTest2 { public static void main(String[] args) { try { IOUtil.printHexByByteArray("e:\\wordstudy\\hello.txt"); } catch (IOException e) { e.printStackTrace(); } } }----》这个是IOUtilTest2类,是测试IOUtil类的第二个方法的测试类第一个测试类能成功运行,第二个测试类就不行了,不知道哪里出问题了,求教大神解答。先谢谢了
查看完整描述

3 回答

?
Its_forever

TA贡献361条经验 获得超328个赞

第二个测试类没毛病啊,报什么错了?

查看完整回答
反对 回复 2016-04-08
  • aiguo94
    aiguo94
    这个是第一个测试类运行的结果 c4 e3 ba c3 c2 f0 0d 0a c4 e3 ba c3 c4 e3 ba c3 b0 a1 a3 ac 0d 0a ce d2 ba dc ba c3 b0 a1 a3 ac 0d 0a b9 fe b9 fe 0d 0a c0 b2 c0 b2 c0 b2 这是第二个测试类运行的结果 0ffffffc4 0ffffffe3 0ffffffba 0ffffffc3 0ffffffc2 0fffffff0 0d 0a 0ffffffc4 0ffffffe3 0ffffffba 0ffffffc3 0ffffffc4 0ffffffe3 0ffffffba 0ffffffc3 0ffffffb0 0ffffffa1 0ffffffa3 0ffffffac 0d 0a 0ffffffce 0ffffffd2 0ffffffba 0ffffffdc 0ffffffba 0ffffffc3 0ffffffb0 0ffffffa1 0ffffffa3 0ffffffac 0d 0a 0ffffffb9 0fffffffe 0ffffffb9 0fffffffe 0d 0a 0ffffffc0 0ffffffb2 0ffffffc0 0ffffffb2 0ffffffc0 0ffffffb2 本来两个结果应该是一样的。不知道哪里出问题了。麻烦你了。谢谢
  • aiguo94
    aiguo94
    请问你知道问题出在哪里吗?
  • Its_forever
    Its_forever
    不好意思,上次看到回复过后正在忙,忙完了就忘了。我重新回答了一哈,你看看
点击展开后面1
  • 3 回答
  • 0 关注
  • 1303 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信