2011-03-24 164 views

回答

4

getFile()返回一個org.primefaces.model.UploadedFile對象,它有一個方法getFileName來返回文件名。然後你可以從文件名獲得擴展名。

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

您可能還想檢查您的字符串實際上是否包含'。'所以你不會有錯誤。 – Mark 2011-03-24 13:56:06

+2

springframework的StringUtils類爲此提供了一種方便的方法: org.springframework.util.StringUtils.getFilenameExtension(「test.txt」)=> txt – Jens 2011-03-24 14:12:58

2

使用另一種選擇org.apache.commons.io.FilenameUtils

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

你應該做一個分割,消除了點。請記住,文件標題中可能有多個點,您必須恢復拆分返回的最後一個參數。

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