如何从XPages FileUpload Control获取文件名

时间:2012-08-03 20:53:55

标签: xpages xpages-ssjs

在XPages中,在文件上传控件中,在用户选择文件之后但在保存之前如何获取文件名?我对这条路并不感兴趣,因为我认为由于安全问题而不是getable,但我想尽可能获得文件名和扩展名。

谢谢!

3 个答案:

答案 0 :(得分:6)

实际上你可以获取文件并完全操作它,读取它,用它做你想做的任何事情,它存储在服务器上的xsp文件夹中,你有读/写访问权限......这里是一段代码片段与文件交互,我通常从beforeRenderResponse调用...

var fileData:com.ibm.xsp.http.UploadedFile = facesContext.getExternalContext().getRequest().getParameterMap().get(getClientId('<INSERT ID OF UPLOAD CONTROL HERE (ie. fileUpload1)>'));

if (fileData != null) {
    var tempFile:java.io.File = fileData.getServerFile();
    // Get the path
    var filePath:String = tempFile.getParentFile().getAbsolutePath();
    // Get file Name
    var fileName:String = tempFile.getParentFile().getName();
    // Get the Name of the file as it appeared on the client machine - the name on the server will NOT be the same
    var clientFileName:String = fileData.getClientFileName();
}

答案 1 :(得分:1)

听起来你指的是需要通过CSJS获取数据,你可以使用以下代码:

var filename = dojo.byId('#{id:fileUpload1}').value.split('\\').pop();

答案 2 :(得分:-1)