比如我在java里打开了一个文件:
java.io.File checkinFile = new java.io.File("D:\tmp\tmp\test.txt");
我怎么样才能到的文件原名呢,即test.txt
checkinFile.getName();是不行的

解决方案 »

  1.   

    getName(); 应该是可以得到的
      

  2.   

    java.io.File checkinFile = new java.io.File("D:/tmp/tmp/test.txt");改成这样试试,还有是不是你这个目录不存在啊
      

  3.   

    你需要好好读Java的转义字符。
    java.io.File checkinFile = new java.io.File("D:\tmp\tmp\test.txt");
    改为
    java.io.File checkinFile = new java.io.File("D:\\tmp\\tmp\\test.txt");
      

  4.   

    大家领会错我的意思了,我不想得到D:\tmp\tmp\test.txt,我仅仅想得到test.txt
      

  5.   

    public static void main(String[] args) {
    java.io.File file = new java.io.File("D:/ddd/ccc/mmm.txt");
    System.out.println(file.getName());
    }我测试的结果就是mmm.txt啊
      

  6.   

    java.io.File f = new java.io.File("D:\\temp\\temp\\test.txt");
    System.out.println(f.getName());

    java.io.File ff = new java.io.File("D:/temp/temp/test.txt");
    System.out.println(ff.getName());都可以 得出 test.txt文件名
      

  7.   

    new java.io.File("D:\tmp\tmp\test.txt");
    这个
    转义字符了
    \t \t \t
    全给转义了
    \\ \\ \\这种才行
    最好还是用File.separator
      

  8.   

    用File.seprator怎么得到test.txt?
      

  9.   

    java.io.File checkinFile = new java.io.File("D:\tmp\tmp\test.txt");"D:\tmp\tmp\test.txt" 相当于D:    tmp    tmp    est.txt, 这个是文件路径吗?你相信它是文件路径吗?