黑马程序员技术交流社区

标题: Java io流问题 [打印本页]

作者: 曾辉    时间: 2012-2-17 10:58
标题: Java io流问题
public class ReadereTest {
public static void main(String[] args) throws IOException {
  try {
    Reader is=new FileReader("d:\\tet.txt");
                                 int i=0;
  while ((i=is.read())!=-1) {
     System.out.print((char)i);
  }
  is.close();
  } catch (FileNotFoundException e) {
   e.printStackTrace();
   System.out.println("文件没有找到");
  }  
  }
}
问题:  int i=0;
              while ((i=is.read())!=-1)
i是int ,然而is.read()视乎读到的是一个数据字节,数据字节是一个int类型吗?
作者: 刘基军    时间: 2012-2-17 11:06
字符流,读取的是一个字符(2个字节),将读到的两个字节存放于int(4个字节)低位的那两个字节,接着使用char强制类型转换,打印输出字符。
作者: 黄锦成    时间: 2012-2-17 16:38
它是字符流啊,它的基本单位是char。read()返回的是一个字符的int表现形式,char和int是可以转换的。你应该要看看API




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2