【问题标题】:Appengine process file upload direct from stream (JAVA)Appengine 处理文件直接从流上传(JAVA)
【发布时间】:2014-10-01 13:49:58
【问题描述】:

我正在尝试将 Java Web 应用程序转换为使用 GAE。

整个应用程序包括在表单中选择一个或多个本地 (xml) 文件并点击提交。在接收端,对xml中的元素进行排序,分别输出到一个textarea(每个输入文件一个)。

解析 XML 后,我不关心文件的内容。

Apache Commons File Upload 使用临时位置上传文件,但这在 GAE 中不可用。

如何为每个上传的文件直接获取InputStream

更新

这是最终的代码示例,因此您不必点击已接受答案中的链接

ServletFileUpload upload = new ServletFileUpload ();
try {
    FileItemIterator uploads = upload.getItemIterator (request);

    while (uploads.hasNext ()) {
        FileItemStream item = uploads.next ();

        if (item.isFormField ()) {
            continue;
        }

        final String filename = item.getName ();

        w.println ("<textarea class='xmlout' readonly='true' cols='150' rows='100' >");

        try {
            doSomethingWith(item.openStream ());
            stream.close ();
        } catch (Exception e) {
            // uh oh!
        }

        w.println ("</textarea>");
    }
} catch (Exception e) {

}

【问题讨论】:

    标签: java google-app-engine file-upload


    【解决方案1】:

    我们将this file upload examplecommons-fileupload:1.2.2 一起使用,它按预期工作(尚未升级到1.3)。示例展示了如何获取每个上传文件的输入流。

    【讨论】:

      猜你喜欢
      • 2014-01-07
      • 2021-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-12
      • 2015-05-06
      • 2016-03-27
      相关资源
      最近更新 更多