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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 薆情媬証書 中级黑马   /  2013-10-26 22:24  /  1235 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 薆情媬証書 于 2013-10-27 17:24 编辑
  1. <p>openMi.addActionListener(new ActionListener()
  2.                 {
  3.                                    public void actionPerformed(ActionEvent e)
  4.                                    {
  5.                                                     FileDialog opDia = new FileDialog(f, "打开…………");
  6.                                                     opDia.setVisible(true);

  7.                                                     String filePath = opDia.getDirectory();
  8.                                                     String fileName = opDia.getFile();

  9.                     file = new File(filePath, fileName);
  10.                                                     if (filePath==null || fileName==null)
  11.                                                                    return;</p><p>                    ta.setText("");
  12.                      try
  13.                      {
  14.                                BufferedReader br = new BufferedReader(new FileReader(file));
  15.                                String line = null;</p><p>                              while ((line = br.readLine() )!=null)
  16.                               {
  17.                                       ta.append(line+"\r\n");
  18.                               }
  19.                               br.close();
  20.                       }
  21.                      catch (IOException s)
  22.                      {
  23.                              throw new RuntimeException("文件打开失败");
  24.                       }</p><p>         }</p><p>}
  25. </p>
复制代码
这段代码哪里错了,当我点菜单栏中的打开时,然后不选择任何文件,点击取消,控制台会出现NullPointException,关于文件路径和文件名,我已经判断过了啊,怎么回事啊?

错误提示如下:
  1. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
  2.         at java.io.File.<init>(File.java:262)
  3.         at MyGui$2.actionPerformed(MyText.java:69)
  4.         at java.awt.MenuItem.processActionEvent(MenuItem.java:627)
  5.         at java.awt.MenuItem.processEvent(MenuItem.java:586)
  6.         at java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:300)
  7.         at java.awt.MenuComponent.dispatchEvent(MenuComponent.java:288)
  8.         at java.awt.EventQueue.dispatchEvent(EventQueue.java:602)
  9.         at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThre
  10. ad.java:273)
  11.         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.
  12. java:183)
  13.         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
  14. ad.java:173)
  15.         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)

  16.         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)

  17.         at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
复制代码

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

4 个回复

正序浏览
To 金牌黑马 2013-10-27 16:21:41
板凳
楼主你好,如果问题已解决请将帖子状态修改为提问结束,
如果未解决请继续追问,谢谢合作
修改方法请看解释帖:http://bbs.itheima.com/thread-89313-1-1.html
回复 使用道具 举报
我之前贴代码都不自己排版啊,粘贴过来它自动给你分层次

点评

不知道。贴过来后,都没有层次了,郁闷!!!  发表于 2013-10-27 09:28
回复 使用道具 举报
再论坛发代码,怎么排版啊,怎么tab敲不动啊(都是用空格排的我)?这代码,排的!!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马