这是我的示例HTML代码
<html>
<head>
<title>
fileupload
</title>
</head>
<body>
<form action="process.jag" method="post" id="" name="">
<!-- File input filed -->
<input type="file" name="myFile">
<!-- The submit button. It calls the server side function uploadfiles() on click -->
<input type="submit" id="" value="Upload File">
</form>
</body>
</html>
这是我的粗糙代码
<%
var verb=request.getMethod();
if (verb=='POST'){
var log = new Log();
var file = request.getFile("myFile");
file.move("C:\Users\vatsal ramesh gosar\Desktop\New folder\form\fileUploadUsingJaggery"+file.getName());
response.sendRedirect("https://www.google.com");
}
%>
它给出了一个NULL指针异常。 请用高效的代码帮助我解决这个问题。
答案 0 :(得分:1)
request.getFile("myFile")
不代表物理文件,而是代表上传文件的流。因此,你不能移动&#34;它使用file.move("/moving/path")
函数。如果要保存上载的文件,请使用以下代码段。
var uploadedFile = request.getFile("myFile");
var savedFile = new File("/path/to/save/location/" + uploadedFile.getName());
savedFile.open('w');
savedFile.write(uploadedFile.getStream());
savedFile.close();