import java.io.*;
public class IODemo2
{
public static void printArray(byte bytes[] ,int num)
{
System.out.println("读了"+ num + "个字节,数组中的数据");
for(int i=0; i< bytes.length; i++)
{
System.out.print(Integer.toHexString(bytes[i])+ " ");
}
System.out.println();
for(int i=0; i< num; i++)
{
System.out.write(bytes[i]);
}
}
public static void main(String[] args) throws Exception
{
InputStream in = System.in;
byte bytes[] = new byte[5];
int num = System.in.read(bytes);
printArray(bytes,num);
num = in.read(bytes,2,2);
printArray(bytes,num);
num = in.read(bytes,2,10);
printArray(bytes,num);
}
}
运行结果:
1234567890
读了5个字节,数组中的数据
31 32 33 34 35
12345读了2个字节,数组中的数据
31 32 36 37 35
Exception in thread "main" java.lang.Index
at java.io.BufferedInputStream.rea
at IODemo2.main(IODemo2.java:27)
我的问题:我不明白"12345读了2个字节,数组中的数据"中"12345"是哪句的结果还有
31 32 36 37 35是怎么回事?谢谢
----------------解决方案--------------------------------------------------------
晕倒,这个论坛不热,居然没人回贴的.
----------------解决方案--------------------------------------------------------
你打出来的数字都是十六进制的,31对应十制的49,也就是数字"1"的ascii码,以此类推
它们所表示的就是你输入的数字
----------------解决方案--------------------------------------------------------