黑马程序员技术交流社区

标题: 这段程序竟然运行不了 报错显示 a java exception has occurred [打印本页]

作者: 沙漠里的小鱼    时间: 2012-2-28 07:05
标题: 这段程序竟然运行不了 报错显示 a java exception has occurred
本帖最后由 沙漠里的小鱼 于 2012-2-28 13:49 编辑

import java.io.*;
public class Demo1 {
public static void main(String[] args) throws IOException{
                FileReader fu =new FileReader("123.txt");
               
                int cn ;
                while ((cn=fu.read())!=-1){
                System.out.println(char(cn));
                }
        fu.close();

}
}
作者: 戚雪晖    时间: 2012-2-28 07:50
你那while循环后面,用分号结束了,是啥意思,写成while(条件){循环体}
作者: 沙漠里的小鱼    时间: 2012-2-28 08:21
1毫秒的价值 发表于 2012-2-28 07:50
你那while循环后面,用分号结束了,是啥意思,写成while(条件){循环体}

嗯 我不小心多打了个分号  但是我去掉还是运行不了啊 能帮我看看啊  谢谢
作者: 冯兵兵    时间: 2012-2-28 09:33
while循环里面应该加括号,改成while((cn=fr.read())!=-1)试试,然后看看你要读的123.txt文件是不是存在
作者: 雷楚光    时间: 2012-2-28 10:24
char(cn) 是什么意思?
我只见过这种代码,你那个我实在看不通。
import java.io.*;
public class Demo1 {
public static void main(String[] args) throws IOExcption{
                FileReader fu =new FileReader("123.txt");
                char[] c =new char[1024];
                int cn =0;
                while ((cn=fu.read(c))!=-1){
                System.out.println(c);
                }
        fu.close();

}
}
作者: 沙漠里的小鱼    时间: 2012-2-28 11:36
雷楚光 发表于 2012-2-28 10:24
char(cn) 是什么意思?
我只见过这种代码,你那个我实在看不通。
import java.io.*;

那为什么我这个运行不了啊  哎 求解释啊
作者: 雷楚光    时间: 2012-2-28 12:01
沙漠里的小鱼 发表于 2012-2-28 11:36
那为什么我这个运行不了啊  哎 求解释啊

char(cn) 没见过这种方法,
作者: 沙漠里的小鱼    时间: 2012-2-28 12:13
雷楚光 发表于 2012-2-28 12:01
char(cn) 没见过这种方法,

毕老师视频第一种文件的读取就是这样写的啊 为什么我的运行不了啊
作者: 戚雪晖    时间: 2012-3-1 08:08
(char)cn.................................
作者: xieguanxiong    时间: 2012-3-1 09:19
1. int cn ;这的分号不对。改成英文版的。
2.System.out.println(char(cn));不对,应该是System.out.println((char)cn);


作者: 胡军喜    时间: 2012-3-1 17:30
改成这样:
        public static void main(String[] args) throws IOException {
                FileReader fu = new FileReader("123.txt");

                int cn;
                while ((cn = fu.read()) != -1) {
                        System.out.println((char)cn);
                }
                fu.close();

        }

强制类型转换用:(char)cn 而不是 char(cn) 这是最基础的,你这样写,在eclipse下编译都不会通过的,一看就看出来了。




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