上傳文件獲取文件名
這里的upload就是你web伺服器根目錄下的一個目錄,是放置上傳文件的目錄,而文件名是這個方法生成的its.getIPTimeStampRand(),據判斷應該是根據客戶端IP加上時間戳生成的唯一值,最後文件的後綴名是item.getName().split("\\.")[1],你可以去upload目錄就能看到。
⑵ 如何在servlet得到jsp上傳的文件的文件名
可以使用commons-fileupload組件實現文件上傳,步驟如下:
1、添加jar包:commons-fileupload-x.x.x.jar和commons-io-2.4.jar
2、編寫或修改form表單
1) 提交方式必須是post
2) 為表單增加屬性enctype="multipart/form-data"
3) 為文件上傳單獨提供servlet,因為增加enctype屬性後,無法使用常規的請求對象來獲取提交的數據
3、使用Commons-FileUpload組件實現文件的上傳
1) 確定本次請求是否是文件上傳請求
boolean flag=ServletFileUpload.isMultipartContent(request);
2) 創建文件上傳的工廠對象
FileItemFactory factory=new DiskFileItemFactory();
3) 創建ServletFileUpload對象,並將工廠對象作為參數傳入
ServletFileUpload upload=new ServletFileUpload(factory);
4) 使用上傳對象從請求對象中解析出提交的所有表單元素
List<FileItem> lstForms=upload.parseRequest(request);
5) 遍歷表單元素集合,實現取出表單元素和上傳文件
//遍歷所有表單元素
for (FileItem fileItem : lstForms) {
//判斷每一個表單元素是否是普通表單
if(fileItem.isFormField()){
System.out.println(fileItem.getString("UTF-8"));
}else{
//上傳前准備工作
//a、上傳後的路徑this.getServletContext().getRealPath("/")會出去當前項目在 部署的伺服器上的絕對路徑
String path=this.getServletContext().getRealPath("/")+"files/";
//b、找出要上傳的文件的名字
String fileName=fileItem.getName();
fileName=fileName.substring(fileName.lastIndexOf("\\")+1);
//c、上傳
fileItem.write(new File(path+fileName));
out.println("<h2>"+fileName+"上傳成功!</h2>");
⑶ 怎麼用js來獲取 file中的上傳文件的文件名
在firefox上,input(type=file)默認獲取到的value值就是文件名。
在IE上,input(type=file)默認獲取到的value值是路徑。
因此用js來獲取fileupload中的上傳文件的文件名需要多方面考慮。
示例代碼:
<form action="" method="get" onSubmit="return false;">
<input type="text" name="test" id="test">
<input type="file" name="testFile" onChange="if(this.value)insertTitle(this.value);">
<input type="submit" value="提交">
</form>
<script language="javascript">
function insertTitle(path){
var test1 = path.lastIndexOf("/"); //對路徑進行截取
var test2 = path.lastIndexOf("\\"); //對路徑進行截取
var test= Math.max(test1, test2)
if(test<0){
document.getElementById("test").value = path;
}else{
document.getElementById("test").value = path.substring(test + 1); //賦值文件名
}
}
</script>
⑷ 用JS如何取得上傳文件的名稱
我就知道路徑document.getElementById("那個的id").value
下面的只做個參考
function
getFileName()
{
var
path
=
document.getElementById("Main_FileUpload1").value;
var
pos1
=
path.lastIndexOf("\\");
alert(pos1);
var
pos2
=
path.lastIndexOf(".");
var
pos
=
path.substring(pos1
+
1,
pos2);
alert(path.substring(pos1+1,pos2));
}
Main_FileUpload1是你的那個上傳的ID,我也在搞這個,搞好了,正巧也是用asp。net