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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王磊 高级黑马   /  2013-6-27 01:12  /  1253 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

                        public void actionPerformed(ActionEvent e)
                        {
                                String d = tf.getText();
                                 //两种情况:
                                 //(1)    E:\Java学习\Java基础视频教程\第22天
                                 //(2)    E:\\Java学习\\Java基础视频教程\\第22天

                                System.out.println(d);//该代码能明确显示出获取到的字符串

                                File dir = new File(d);  //如果是第一种情况,\为转移字符,并转义了其后第一个字符。
                                if(!(dir.exists()))
                                {
                                        ta.setText("该文件夹不存在!!");
                                }
                                File[] files = dir.listFiles();
                               
                                ta.setText("");
                               
                                for(File f : files)
                                {
                                        ta.append(f.getPath()+"\r\n");
                                }
                                tf.setText("");
                        }
                });

如注释,如果是第一种情况,字符串中的\转义了其后的第一个字符,这样该字符串就不符合文件的路径名格式。为什么运行中依然能得到正确的结果?
目前测试结果:两种情况都能正常运行,并且结果正确。
求高手解释

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马