gpt4 book ai didi

java - 帮助使用 Java/J2EE 上传文件

转载 作者:行者123 更新时间:2023-12-01 16:11:40 25 4
gpt4 key购买 nike

我需要使用 Apache fileupload 和 ProgressListener 上传文件,但同时我还需要显示上传状态的进度条。

实际要求是我只需要解析本地 XML 文件,将 xml 解析为适当的对象并将它们放入数据库中。我真的需要将文件上传到服务器来解析它吗?因为我遇到异常,例如在远程服务器上找不到文件,而它在我的本地 m/c 上运行良好。

任何快速帮助将不胜感激。

提前致谢!!!

最佳答案

如果您有权访问服务器端,我建议调试上传过程。该异常表明您想根据上传的文件名在服务器上打开该文件。在您的本地计算机上,这是可行的,因为它在同一文件系统上运行。在服务器端,Apache FileUpload接收二进制数据,需要从请求数据流中提取该数据:


@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
if (ServletFileUpload.isMultipartContent(request)) {
FileItemFactory factory = new DiskFileItemFactory(Integer.MAX_VALUE, null);
ServletFileUpload upload = new ServletFileUpload(factory);
List items = upload.parseRequest(request);
for (FileItem item : items) {
byte[] data = item.get();
// do something with the binary data
}
} else {
System.err.println("Not a multipart/form-data");
}
}

您还需要以下形式:

<form name='frm' method="POST" action='UploadServlet' id="frm" enctype="multipart/form-data">

关于java - 帮助使用 Java/J2EE 上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/986110/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com