黑马程序员技术交流社区

标题: 文本文件读取方式1 读取单个字符 [打印本页]

作者: 邵阳    时间: 2012-8-12 12:07
标题: 文本文件读取方式1 读取单个字符
本帖最后由 邵阳 于 2012-8-12 13:04 编辑

/*import java.io.*;
class Demo
{
        public static void main(String[]args)throws IOException
        {
                FileReader file=new FileReader("demo.txt");
                int chr=file.read();
                System.out.println("chr="+(char)chr);
                int chr1=file.read();
                System.out.println("chr1="+(char)chr1);
                int chr2=file.read();
                System.out.println("chr2="+(char)chr2);
                int chr3=file.read();
                System.out.println("chr3="+chr3);
                int chr4=file.read();
                System.out.println("chr4="+chr4);
                file.close();
        }
}

怎么结果是
D:\java\zuoye\io>java Demo
chr=a
chr1=b
chr2=c
chr3=13
chr4=10

不应该是-1吗;无语

我的txt文件里面数据是  abc


作者: 张雪磊    时间: 2012-8-12 12:19
-1是一个判断值,当判断为-1时就不会读了,所以-1是不会读出来的,之所以会出现13和10两个值,楼主肯定是在文件结尾按了回车吧?回车在windows里对应的是\r   \n两个字符,这两个字符对应的int值就是13和10.

作者: 杨锦    时间: 2012-8-12 12:54
-1是会读出来的,你强转完就会输出一个"?",没强转就输出-1,之所以你没读到-1,读到10和13,是因为吗的file文件里面打了一个回车,就是\r\n,你要是再读一个,就可以读到-1了




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