文件上载组件:<input type="file" name="theFile">在页面上点击"Browse.."按钮后出现“选择文件”的应用框,选择例如:c:\abc.txt文件后实现上载。这里我的目的不是为了真正实现上载,而是想通过表单获取c:\abc.txt这个长串,通过org.apache.struts.upload.FormFile的getFileName()是得到的上载成功后的文件名:abc.txt,而我想得到是上载前本机abc.txt的绝对路径c:\abc.txt,怎么得到它呢?

解决方案 »

  1.   

    当你选择好要上传的文件后:
    request.getParameter("theFile");
      

  2.   

    request.getParameter("theFile");我试过的了,得到的是null
      

  3.   

    直接获取文件名是不行的,下面这种方法可行
    <input type="file" name="theFile">
    <input type="hidden" name="ff" />
    提交时
    document.all.ff.value= document.all.theFile.value;
    获取文件:
      String name = [object].getRequest().getParameter("ff");
      再转换一下乱码就行了,得到的是d:\\***\\***.***
      

  4.   

    谢谢上面两位,不过用脚本实现依然获得的是:null
    上载组件实际上value里是没有值的我认为,
    再等待高人求解了!
      

  5.   

    是null很正常的,这是受encType="multipart/form-data"的影响,已经不能再直接获取值了,一般要借助上传类或组件才能获取~ 我正在做这个东东,不过还没完全解决...
      

  6.   

    谢谢liurui0502(流遛) ,解决了!!!就是按你的方法,散分,哈哈,谢谢高人了!