Primefaces文件上载获取文件扩展名

Primefaces文件上载获取文件扩展名,primefaces,Primefaces,我正在使用primefaces fileUpload组件,然后检查FileUploadEvent.getFile,但我没有找到可靠获取扩展名的方法。有什么想法吗?getFile()返回org.primefaces.model.UploadedFile对象,该对象有一个方法getFileName来返回文件名。然后可以从文件名中获取扩展名 UploadedFile tfile = event.getFile(); String str = tfile.getFileName(); String ex

我正在使用primefaces fileUpload组件,然后检查FileUploadEvent.getFile,但我没有找到可靠获取扩展名的方法。有什么想法吗?

getFile()返回org.primefaces.model.UploadedFile对象,该对象有一个方法getFileName来返回文件名。然后可以从文件名中获取扩展名

UploadedFile tfile = event.getFile();
String str = tfile.getFileName();
String ext = str.substring(str.lastIndexOf('.'), str.length());

使用org.apache.commons.io.FilenameUtils的另一个选项

UploadedFile tfile = event.getFile();
String str = tfile.getFileName();
String prefix = FilenameUtils.getBaseName(str);
String suffix = FilenameUtils.getExtension(str);

你应该做一个分割,消除这个点。请记住,文件标题中可能有多个点,必须还原拆分返回的最后一个参数

    UploadedFile file = e.getFile();
    String [] nameFile= file.getFileName().split("[.]");
    String extension= nameFile[nameFile.length-1];

您可能还想检查字符串是否实际包含“.”,这样就不会出现错误。springframework的StringUtils类提供了一个方便的方法:org.springframework.util.StringUtils.getFilenameExtension(“test.txt”)=>txt