ftp上传时,filePath(文件路径)是如何在jsp页面中指定的 文件所在的目录路径,如何找出呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <%request.getContextPath() %>/文件夹名 你是要绝对路径么<%=request.getRealPath("") %>/文件夹名 这个问题通过js是不能获取的,问题考虑点转到了request上了,但是普通的HttpServletRequest是不能获取表单那边提交的file,建议LZ使用Spring的MultipartRequest来直接获取file,request.getFile();参考:xml<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设置上传文件的最大尺寸为1MB --> <property name="maxUploadSize"> <value>1048576</value> </property> </bean>public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { // 转型为MultipartHttpRequest: MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; // 获得文件: MultipartFile file = multipartRequest.getFile(" file "); // 获得文件名: String filename = file.getOriginalFilename(); // 获得输入流: InputStream input = file.getInputStream(); // 写入文件 // 或者: File source = new File(localfileName.toString()); multipartFile.transferTo(source); } <input type="file" name="file"/> /** * 获取file类型的input的全部路径(绝对路径) * @param filePathId * @return */function getFilePath(filePathId){ //判断浏览器类型 var isIE = (document.all) ? true : false; var isIE6 = isIE && (navigator.userAgent.indexOf('MSIE 6.0') != -1); var isIE7 = isIE && (navigator.userAgent.indexOf('MSIE 7.0') != -1); var isIE8 = isIE && (navigator.userAgent.indexOf('MSIE 8.0') != -1); var isIE9 = isIE && (navigator.userAgent.indexOf('MSIE 9.0') != -1); var path = ''; if(isIE6 || isIE9) { var file = document.getElementById(filePathId); path = file.value; }else if(isIE7 || isIE8) { var file = document.getElementById(filePathId); file.select(); path = document.selection.createRange().text; document.selection.empty(); }else{ try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); }catch (e) { alert('在地址栏输入about:config,然后修改signed.applets.codebase_principal_support的键值,将值修改为true'); return; } var fname = document.getElementById(filePathId).value; var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); try { // Back slashes for windows file.initWithPath( fname.replace(/\//g, "\\\\") ); }catch(e) { if (e.result!=Components.results.NS_ERROR_FILE_UNRECOGNIZED_PATH) throw e; alert('无法加载文件'); return; } path = file.path; } return path; } j2ee快速开发遇到的异常 请教一些网站的点击等待的进度条是怎么实现的(附图) 现在WEB上出现的那种弹出框是用什么做的? hibernate 3.0 查询的中文转换问题 求助,javascript编辑网页,close函数遇到iframe后失效 问一个最笨的问题.....如何实现打开一个网页index.jsp的时候,自动弹出另外一个对话框? ★关于ifram显示指定位置内容的问题? <logic>标签 和<bean>标签的问题。 高分相送:如何改变浏览器端的超时时间? 请帮我看看我的jsp网页! struts2的类型转换不成功哪位知道请指教下 在Action中获取servletContext
<%=request.getRealPath("") %>/文件夹名
参考:xml
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 设置上传文件的最大尺寸为1MB -->
<property name="maxUploadSize">
<value>1048576</value>
</property>
</bean>public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
// 转型为MultipartHttpRequest:
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
// 获得文件:
MultipartFile file = multipartRequest.getFile(" file ");
// 获得文件名:
String filename = file.getOriginalFilename();
// 获得输入流:
InputStream input = file.getInputStream();
// 写入文件
// 或者:
File source = new File(localfileName.toString());
multipartFile.transferTo(source);
}
* 获取file类型的input的全部路径(绝对路径)
* @param filePathId
* @return
*/
function getFilePath(filePathId){
//判断浏览器类型
var isIE = (document.all) ? true : false;
var isIE6 = isIE && (navigator.userAgent.indexOf('MSIE 6.0') != -1);
var isIE7 = isIE && (navigator.userAgent.indexOf('MSIE 7.0') != -1);
var isIE8 = isIE && (navigator.userAgent.indexOf('MSIE 8.0') != -1);
var isIE9 = isIE && (navigator.userAgent.indexOf('MSIE 9.0') != -1);
var path = '';
if(isIE6 || isIE9)
{
var file = document.getElementById(filePathId);
path = file.value;
}else if(isIE7 || isIE8)
{
var file = document.getElementById(filePathId);
file.select();
path = document.selection.createRange().text;
document.selection.empty();
}else{
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}catch (e) {
alert('在地址栏输入about:config,然后修改signed.applets.codebase_principal_support的键值,将值修改为true');
return;
}
var fname = document.getElementById(filePathId).value;
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
try {
// Back slashes for windows
file.initWithPath( fname.replace(/\//g, "\\\\") );
}catch(e) {
if (e.result!=Components.results.NS_ERROR_FILE_UNRECOGNIZED_PATH) throw e;
alert('无法加载文件');
return;
}
path = file.path;
}
return path;
}