1

当我使用 Commons FileUpload 方法 parseRequest(request) 上传文件并读取额外的帖子参数。所以我只有在上传文件后才能获取参数值。问题是在上传文件之前我需要这些参数值(其中一个参数是upload_path)。

有没有办法先从多部分内容中获取发布参数,然后开始上传到正确的文件夹?

(request.getParameter(name) 将为多部分内容返回 null)。

提前致谢!

4

1 回答 1

1

这对我有用,在第一次通过时我检查所有参数,然后我将非表单字段用于下载。

ServletFileUpload upload = new ServletFileUpload();
FileItemIterator iter = upload.getItemIterator( request );

while ( iter.hasNext() ) {
    FileItemStream item = iter.next();
    String name = item.getFieldName();
    InputStream stream = item.openStream();

    if ( item.isFormField() ) {
        byte[] buffer = new byte[ 128 ];
        int len = stream.read( buffer );
        String value = new String( buffer, 0,len );
        if ( name.equals( "name" ) ) {
            filename  = value;
        }
        System.err.println( "Form field " + name + " with value " + value + " detected." );
        stream.close();
    }
}
于 2010-06-25T08:43:22.680 回答