在java中读取上传的文件名

时间:2012-04-17 10:24:42

标签: java file-upload

我已经在java上传了一个文件,我正在尝试这样的东西来获取上传的文件名

private UploadedFile uploadedFile;
System.out.println("File name: " + uploadedFile.getName());

它正在打印文件名及其相对于计算机的路径:

File name: E:\Grievances Project\Feb 2012 data\22439-29-02-2012\22439-29-02-2012.xls

我怎样才能获得上传的文件名,而不管上传的位置如何:

File name: 22439-29-02-2012.xls

3 个答案:

答案 0 :(得分:5)

System.out.println(new File(
    uploadedFile.getName()).getName());

您还可以查看String方法,查看lastIndexOf("path separator")substring(int,int)等内容,以更通用的方式处理它。

答案 1 :(得分:2)

这取决于浏览器。因此最好使用子String方法。

String fileName="E:/Grievances Project/Feb 2012 data/22439-29-02-2012/22439-29-02-2012.xls";
System.out.println(fileName.substring((file.lastIndexOf("/")+1), fileName.length()));

答案 2 :(得分:0)

import java.io.File;

......

System.out.println("File name: " + (new File(uploadedFile.getName())).getName());

或者,简单地说,使用getName()中的java.io.File方法。 (我认为上面的getName()方法来自您自己的UploadedFile类?)