A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张东贤 中级黑马   /  2013-3-20 23:55  /  977 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

import java.io.FileReader; import java.io.IOException;

public class test {

public static void main(String[] args) throws IOException { //此代码在我当前工程下抛 空指针异常,我转移到另外的工程后运行正常, 非常费解,文件在classpath路径下。 String filepath = test.class.getClassLoader().getResourc e("test.txt").getPath();

System.out.println(filepath); FileReader fr = new FileReader(filepath); char[] c = new char[1024]; int len; while((len = fr.read(c))!=-1) {

System.out.println(new String(c,0,len)); } fr.close(); } }

点评

如果问题未解决,请继续追问回复者,如果问题已经解决,请将分类改为“已解决”,谢谢  发表于 2013-3-21 10:42

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

2 个回复

倒序浏览
String filepath = test.class.getClassLoader().getResource("test.txt").getPath();
这个不对吧~~
回复 使用道具 举报
我整理了一下你写的程序看起来舒服一些,运行后没有问题,要保证文件是存在的
  1. import java.io.*;

  2. public class test
  3. {

  4.                 public static void main(String[] args) throws IOException
  5.         {  
  6.                 String filepath = test.class.getClassLoader().getResource("test.txt").getPath();

  7.                 System.out.println(filepath);
  8.                 FileReader fr = new FileReader(filepath);
  9.                 char[] c = new char[1024];
  10.                 int len;
  11.                 while((len = fr.read(c))!=-1)
  12.                         {
  13.                                 System.out.println(new String(c,0,len));
  14.                         }
  15.                 fr.close();
  16.         }
  17. }
  18. /*
  19. 运行结果:/F:/test.txt     文件的绝对路径
  20.                   asdf             文件的内容
  21. 当text.txt文件不存在时能编译通过,但是运行事就会出现空指针异常。
  22. 这就说明要创建一个读取流对象时,这个文件是一定要存在的才行。


  23. */
复制代码

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马