java获取form表单里的字段和文件流

Posted 东山磐石西山流云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java获取form表单里的字段和文件流相关的知识,希望对你有一定的参考价值。

        Map map=new HashMap();
        boolean isMultipart = ServletFileUpload.isMultipartContent(request);
        if (isMultipart) {
            // 文件上传
            // 用stream api处理,提高性能
            // System.err.println("file upload request...");
            ServletFileUpload upload = new ServletFileUpload();
            FileItemIterator fileItemIterator = upload.getItemIterator(request);
            for (; fileItemIterator.hasNext();) {
                FileItemStream item = fileItemIterator.next();
                String name = item.getFieldName();
                System.out.println(name);
                if (item.isFormField()) {
                    InputStream stream = item.openStream();
                    // 普通域
                    String value = Streams.asString(stream, "UTF-8");
                    if (map.containsKey(name)) {
                        String valueto = (String) map.get(name);
                        valueto += "," + value;
                        map.put(name, valueto);
                    } else {
                        map.put(name, value);
                    }
                    stream.close();
                } else {
                    // 文件域
                    InputStream in = item.openStream();// 获取文件流
                }
            }
        }

 

以上是关于java获取form表单里的字段和文件流的主要内容,如果未能解决你的问题,请参考以下文章

java http post 同时发送文件流与数据

服务端Json数据+js表单数据提交的 表单交互插件(base-form.js)

如何从 Java 中的 HttpResponse 中获取单个表单字段并将其写入文件?

17.FastAPI 表单数据

在java中写jsp网页和servlet中,form表单的提交方法get与post的区别?

Drupal 自定义表单记住文本字段数据