java读取一个(.prl)文件,然后在控制台输出二进制。

如题所述

第1个回答  2013-01-05
二进制不好看, 16进制比较公正

public class Test1 {

/**
* @param args
*/
public static void main(String[] args) {
FileInputStream is = null;
try {
is = new FileInputStream("i:/test.txt");
int i;
byte[] b = new byte[64];
while((i=is.read(b))!=-1)
{
System.out.println(bytesToHexString(b));
}
is.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
public static final String bytesToHexString(byte[] bArray) {
StringBuffer sb = new StringBuffer(bArray.length);
String sTemp;
for (int i = 0; i < bArray.length; i++) {
sTemp = Integer.toHexString(0xFF & bArray[i]);
if (sTemp.length() < 2)
sb.append(0);
sb.append(sTemp.toUpperCase());
sb.append(' ');
}
return sb.toString();
}

}

结果=======================
6A 61 76 61 B6 C1 C8 A1 D2 BB B8 F6 28 2E 70 72 6C 29 CE C4 BC FE A3 AC C8 BB BA F3 D4 DA BF D8 D6 C6 CC A8 CA E4 B3 F6 B6 FE BD F8 D6 C6 A1 A3 0A 32 35 20 B7 D6 D6 D3 C7 B0 20 CC E1 CE CA D5
DF A3 BA 20 73 75 70 65 72 6C 69 6A 69 61 6E 61 6E 20 7C 20 D0 FC C9 CD B7 D6 A3 BA 31 30 20 7C E4 AF C0 C0 B4 CE CA FD A3 BA 32 31 B4 CE 0A CE D2 C0 B4 B0 EF CB FB BD E2 B4 F0 0A 09 C4 FA BB
B9 BF C9 D2 D4 CA E4 C8 EB 39 39 38 35 20 B8 F6 D7 D6 0A B2 CE BF BC D7 CA C1 CF A3 BA 0A C4 E4 C3 FB CC E1 BD BB BB D8 B4 F0 0A B0 B4 C4 AC C8 CF C5 C5 D0 F2 7C B0 B4 CA B1 BC E4 C5 C5 D0 F2
0A BB D8 B4 F0 20 B9 B2 31 CC F5 0A 39 20 B7 D6 D6 D3 C7 B0 67 34 37 30 36 35 37 35 33 38 7C 20 B5 B1 C7 B0 B7 D6 C0 E0 A3 BA 39 20 BC B6 20 C5 C5 C3 FB A3 BA 37 34 30 30 0A 0A 46 69 6C 65 49
6E 70 75 74 53 74 72 65 61 6D 20 66 69 73 3D 6E 65 77 20 46 69 6C 65 49 6E 70 75 74 53 74 72 65 61 6D 28 22 45 3A 2F 78 78 2E 70 72 6C 22 29 3B 0A 69 6E 74 20 78 3D 30 3B 0A 77 68 69 6C 65 28
28 78 3D 66 69 73 2E 72 65 61 64 28 29 29 21 3D 2D 31 29 0A 7B 0A 20 20 20 20 20 53 79 73 74 65 6D 2E 6F 75 74 2E 70 72 69 6E 74 6C 6E 28 49 6E 74 65 67 65 72 2E 74 6F 42 69 6E 61 72 79 53 74
72 69 6E 67 28 78 29 29 3B 0A 7D 0A 29 29 21 3D 2D 31 29 0A 7B 0A 20 20 20 20 20 53 79 73 74 65 6D 2E 6F 75 74 2E 70 72 69 6E 74 6C 6E 28 49 6E 74 65 67 65 72 2E 74 6F 42 69 6E 61 72 79 53 74
第2个回答  2013-01-05
FileInputStream fis=new FileInputStream("E:/xx.prl");
int x=0;
while((x=fis.read())!=-1)
{
System.out.println(Integer.toBinaryString(x));
}

给分吧本回答被提问者采纳
相似回答
大家正在搜