黑马程序员技术交流社区

标题: file类问题 [打印本页]

作者: 刘建宇    时间: 2011-11-19 14:08
标题: file类问题
public static void mothed1(){//返回该目录下的所有文件及文件夹
        File f1=new File("d:");
        String [] names=f1.list();
        for(String name:names){
                System.out.println(name);
        }
调用这个方法去获取D盘里面的文件及文件夹的时候怎么返回的是些这个
.classpath
.project
.settings
bin
src
而c.e.f盘又都能获取到

作者: 咪咪    时间: 2011-11-19 14:23
把 File f1=new File("d:");改成 File f1=new File("d:\\");就出结果了,不然系统不会把"d:"当成盘符。你试试。
作者: 徐杨    时间: 2011-11-19 14:55
本帖最后由 徐杨 于 2011-11-19 14:59 编辑

需要改成File f1=new File("d:\\");  不然会在默认eclipse目录下寻找的
\\是转义\   
而\是windows下的路径分隔符
java的File类里面有一个专门用于分隔符的方法File.separator  调用那个方法就可以不用担心分隔符在哪个系统环境下不一样的问题了 他会识别当前系统的默认分隔符
作者: 刘建宇    时间: 2011-11-19 15:22
徐杨 发表于 2011-11-19 14:55
需要改成File f1=new File("d:\\");  不然会在默认eclipse目录下寻找的
\\是转义\   
而\是windows下的路径 ...

确实是这样  呵呵  我把eclipes的工作环境放在了D盘,造成了其他盘能获取,D盘直接到默认下面获取
作者: 侯伟浩    时间: 2011-11-21 14:38
改成File f1=new File("D:"+File.separator);
这样就不用区分是“\”还是“/”了。




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