如何通过Java applet上传文件?

具体我怎么能:

  • 显示一个按钮,让用户浏览他的计算机并选择一个文件
  • 上传文件时显示进度条
  • 并将文件存储到运行applet的网站服务器上的某个位置

有任何想法吗? 是的,我必须在applet中执行此操作,并且我将使其成为受信任/签名的applet,并且已经调查了所有这些。

我必须这样做,有非常大的(4Gb +)文件。 这篇Google Answerspost底部的一段代码帮了我一大笔钱: http : //answers.google.com/answers/threadview? id = 193780

它展示了一种将文件上传到较小位的方式,因此您可以轻松使用JProgressBar。

自6u10以来无需签署applet。 相反,您可以使用FileOpenService通过标准Swing文件选择器读取文件(技术上依赖于实现)。 然后,只需将文件作为浏览器发回,即可使用多部分MIME HTTP POST 。

我会在文件中加载/流,将其转换为Base64(或不),并将包含它的POST请求(使用URLConnection)发送到另一端的servlet。

从客户端的角度来看,在我看来,它比执行多部分/表单数据文件更容易,并且让Commons FileUpload在另一端等待它。

1除非有可用的库在客户端轻松完成。

我很无聊。 我想我只是复制上次回答这个问题时的链接。

签名小程序

JFileChooser中

的JProgressBar

一个JButton

Apache HttpClient的PostMethod带有MultipartRequestEntity ,它将JFileChooser的文件包装在FilePart中 。