本帖最后由 曹宇 于 2013-6-13 22:36 编辑
我创建一个文件对象 用的当前路径下的 Test1.java
当前路径下 有这个文件 可是程序一运行就报出未发现文件异常
我在CMD下面编译运行都可以
就是用Eclipse运行就提示异常 这是为什么?
求教
代码如下:- /*
- * 需求:7、 自定义字符输入流的包装类,通过这个包装类对底层字符输入流进行包装
- * 让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。
- *
- * */
- package com.itheima;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.io.FileReader;
- import java.io.IOException;
- public class Test7 {
- public static void main(String args[])
- {
- File file = null;
- file = new File("Test1.java");
- ReaderPackaging rp = new ReaderPackaging(file);
- System.out.print(rp.readFile());
-
- }
-
- }
- class ReaderPackaging
- {
- File file;
- //构造函数,传入被操作的文件
- ReaderPackaging(File file)
- {
- this.file = file;
- }
-
- //定义读取流对象
- BufferedReader readinfo = null;
-
- //定义行号计数器,默认为1开始
- private int linecount=1;
-
-
- public String readFile()
- {
- try {
- //为读取流对象关联
- readinfo = new BufferedReader(new FileReader(file));
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- }
- //定义一个字符串容器,用以存放添加行号和冒号后的字符串数据
- StringBuilder tempbuf = new StringBuilder("");
-
- //临时存储一行字符串
- String line = null;
-
- //调用BufferedReader的readLine方法一次读取一行,存入line(临时存储字符串)中
- //然后在加上行号和冒号后添加进入字符串容器中
- try {
- while((line=readinfo.readLine())!=null)
- {
- tempbuf.append(linecount+":"+line+"\r\n");
- linecount++;
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- //返回带行号和冒号的字符串容器的字符串表现形式
- return tempbuf.toString();
-
- }
-
-
- }
复制代码 |