【发布时间】:2014-05-10 11:22:36
【问题描述】:
在我的 jsp 页面中,使用文件上传并将字符串文件传递到 java 页面以复制到特定文件夹。我想要复制文件的完整路径。但我只得到一个带扩展名的文件名。
扫描文件:ABC.pdf
它只显示:ABC.pdf
我要显示:c:/abc.pdf
【问题讨论】:
在我的 jsp 页面中,使用文件上传并将字符串文件传递到 java 页面以复制到特定文件夹。我想要复制文件的完整路径。但我只得到一个带扩展名的文件名。
扫描文件:ABC.pdf
它只显示:ABC.pdf
我要显示:c:/abc.pdf
【问题讨论】:
JSP 是生成面向客户端的 HTML 代码(通常称为视图)的代码,而 Servlet 是服务器代码。实际上它们将在不同的机器上,那么完整路径有什么用。提交表单时,文件内容应发布到 servlet。
你的jsp应该是这样的:
<form action="UploadServlet" method="post"
enctype="multipart/form-data">
<input type="file" name="file" size="50" />
<br />
<input type="submit" value="Upload File" />
</form>
当然,您还有其他输入字段。
查看此链接
【讨论】:
本地文件路径在服务器端是无用的。它只对黑客有用。这就是浏览器不发送它的原因。它是一种安全措施。你应该很高兴它在那里。我很惊讶现有的答案都没有指出这一点。
在服务器端,您决定保存文件的位置。显然,您不希望用户做出决定。让他们能够决定将文件保存在服务器上的哪个位置,这将使他们能够覆盖您的系统文件。
【讨论】: