html多部分表单中输入文本字段的值 [英] values of input text fields in a html multipart form

查看:206
本文介绍了html多部分表单中输入文本字段的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Apache服务器端应用程序中使用Apache Commons FileUpload,该应用程序具有包含字段的html表单:
$ b


  1. fied将
    填入
    目标邮箱的电子邮件地址

  2. 带有发件人邮件的邮件文本

    >

  3. a <输入类型=文件... 用于上传照片的字段。
    我可以接收上传的文件(作为流),但我如何访问1)和2)表单值(由应用程序的用户完成)?
    非常感谢,
    Aurel


解决方案

使用FileItemIterator迭代请求中的项目。迭代器的next()方法返回一个FileItemStream(不是FileItem)。打开该对象上的流,并将其转换为如下所示的字符串:

$ p $ import org.apache.commons.fileupload.util。流;
...
FileItemStream item = iterator.next();
InputStream stream = item.openStream();
String name = item.getFieldName();
String value = Streams.asString(stream);

其他答案提供的getString方法是FileItem接口上的一个方法。 $ b

I use Apache Commons FileUpload in a java server-side app that has a html form with fields :

  1. a destination fied that will be filled with email address of the destination mailbox

  2. a message text with a message of the sender

  3. a <input type=file ... field for uploading a photo. I can receive uploaded file (as a stream) but how I can access 1) and 2) form values (completed by the user of app)? Many thanks, Aurel

解决方案

I am guessing you are using a FileItemIterator to iterate the items in the request. The iterators next() method returns a FileItemStream (not a FileItem). Open the stream on that object and turn it into a string like this:

import org.apache.commons.fileupload.util.Streams;
...
FileItemStream item = iterator.next();
InputStream stream = item.openStream();
String name = item.getFieldName();
String value = Streams.asString(stream);

The getString method suggested by other answers is a method on the FileItem interface.

这篇关于html多部分表单中输入文本字段的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆