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]; 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类的第二个方法的测试类
这个是第一个测试类运行的结果
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
本来两个结果应该是一样的。不知道哪里出问题了。求教大神解答。先谢谢了
相关分类