代码如下:
public static void main(String[] args) {
//(十) 使用随机文件流类RandomAccessFile将一个文本文件倒置读出。
File file = new File("ma.dat");
try {
RandomAccessFile raf = new
RandomAccessFile(file,"r");
//???
int b=raf.read();
System.out.println(b);
/*int b = raf.readByte();
System.out.println(b);*/
int c=raf.readByte();
System.out.println(c);
int d=raf.readByte();
System.out.println((char)d);
char ch = '建';
System.out.println(Integer.toBinaryString(ch));
//101111011111010
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
然后ma.dat里的内容是:
建2ield&*@`
中文乱码
如何解决?
打印到控制台的结果是:
189
-88
2
101111011111010
为什么结果是189,-88???后面的2和101111011111010我懂。就是不懂前面二个结果?求大牛解答!感激不尽!