0

我想要的是用户可以在他的本地驱动器中选择一个完整的路径,然后一个文件(现在在我的应用程序的 war 文件夹中)将保存在该选定的用户位置

我正在使用 GWT 中的文件上传来上传我的文件,它工作正常,我也会使用 FileUpload 进行下载吗?

如果有可能获得用户选择的位置,例如 d:\downloadfolder,第二个选项,我的问题会解决,剩下的我会做!

以下是上传代码,请帮我下载

final String UPLOAD_ACTION_URL = GWT.getModuleBaseURL() + "upload";
initWidget(panelImages);
final FormPanel form = new FormPanel();
form.setAction(UPLOAD_ACTION_URL);

form.setEncoding(FormPanel.ENCODING_MULTIPART);
form.setMethod(FormPanel.METHOD_POST);

VerticalPanel panel = new VerticalPanel();
form.setWidget(panel);

FileUpload upload = new FileUpload();
upload.setName("uploadFormElement");
panel.add(upload);

// Add a 'submit' button.
panel.add(new Button("Submit", new ClickHandler() {
    public void onClick(ClickEvent event) {
        form.submit();
    }
}));

form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
    public void onSubmitComplete(SubmitCompleteEvent event) {
        if(event.getResults().contains("DataBase Restored")){
            Window.alert("Database Restored !");
        }
    }
});

panelImages.add(form);
4

1 回答 1

0

您不能从 GWT 执行此操作,因为 JavaScript 无法访问本地硬盘驱动器。您能做的最好的事情就是正常启动下载(例如,显示指向用户可以单击的文件的链接)。根据他们的浏览器设置,他们将选择文件的位置,或者将其下载到某个默认位置。你不能只用 JavaScript 知道那个位置。

如果这是项目要求,我认为您需要包含一个重量级的插件,如 java 或 flash。

于 2013-02-27T15:15:28.727 回答