Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaServlet3.0从特定输入获取文件名_Java_File Upload_Servlet 3.0 - Fatal编程技术网

使用JavaServlet3.0从特定输入获取文件名

使用JavaServlet3.0从特定输入获取文件名,java,file-upload,servlet-3.0,Java,File Upload,Servlet 3.0,使用JavaServlet3.0文件上载,当我只知道输入的名称时,如何获取文件名? 例如,我将有几个类型为type=“file”的输入,并且将具有multiple属性。当时我需要文件名,我知道输入名,但我不知道文件名。我知道如何从带有子字符串的头文件中获取文件名,但我不知道如何从特定的输入中获取文件名。不管我以什么顺序获得文件名,我只需要从正确的输入中获取它们,并将它们放入数组中以供以后处理。我已经在这个问题上纠缠了大约3周,找不到答案,这可能意味着我找错了东西 我的输入如下: <inpu

使用JavaServlet3.0文件上载,当我只知道输入的名称时,如何获取文件名? 例如,我将有几个类型为type=“file”的输入,并且将具有multiple属性。当时我需要文件名,我知道输入名,但我不知道文件名。我知道如何从带有子字符串的头文件中获取文件名,但我不知道如何从特定的输入中获取文件名。不管我以什么顺序获得文件名,我只需要从正确的输入中获取它们,并将它们放入数组中以供以后处理。我已经在这个问题上纠缠了大约3周,找不到答案,这可能意味着我找错了东西

我的输入如下:

<input type="file" name="pic1" multiple="multiple">
<input type="file" name="pic2" multiple="multiple">
<input type="file" name="pic3" multiple="multiple">

和代码:
函数集文件名(arg,num){

对于(c=0;cdo)是否有人有时间帮助我?真正的问题是,我不知道如何使用标题信息。有许多示例说明如何从标题中获取文件名,但我找不到任何东西可以告诉我,当有多个“file”类型的输入时,如何仅从特定输入中获取文件名.我不需要太多的帮助,只要朝正确的方向推动一下,我就会从那里开始。我想我明白了。BalusC的MultipartMap实际上满足了我的要求。我只需要对我的处理servlet进行一些更改,这样我就可以使用它。嗯,我仍然相信纯粹用java一定有办法做到这一点,但我想不出来。我没有自己的想法ssues从标题中获取文件名,但如果我不知道这些文件是从哪个输入上传的,那么它们就没用了。不过,我确实找到了一个合适的解决方案。因为我在上传文件之前知道文件是从哪个输入上传的,所以我编写了一个简单的JavaScript函数来设置隐藏输入中的文件名。我将其硬编码为最大num文件的ber为12,但我正在探索将其改为使用files.length。
function setFileNames(arg, num){
    for (c=0; c<=11;c++){
    var d = c+1;
    var key = arg.getAttribute('id');
    var number = key.charAt(key.length-1);
    var FileName = document.getElementById("FileName" + d + "-" + number);
    var f = document.getElementById("pic" + number);
    var name = f.files.item(c).name;
        FileName.value = name;


        }return;
    }