当前位置: 技术问答>java相关
检查文件是否存在的问题
来源: 互联网 发布时间:2015-03-31
本文导语: 上传文件中想判断文件是否存在,是的话提示用户是否覆盖,是的话才动作,怎么实现?下面的应该怎么改,或者不改,有什么新的办法 Gif file upload demo 请选择上传的文件 public class DemoParserUpload extends...
上传文件中想判断文件是否存在,是的话提示用户是否覆盖,是的话才动作,怎么实现?下面的应该怎么改,或者不改,有什么新的办法
请选择上传的文件
public class DemoParserUpload extends HttpServlet {
private string dir;
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
dir="c:temp";
PrintWriter out = response.getWriter();
response.setContentType("text/plain");
try {
MultipartParser mp = new MultipartParser(request, maxsize);
Part part;
while ((part = mp.readNextPart()) != null) {
String name = part.getName();
File comppath=new File(dir,name);
if (comppath.exists())
{
}
else
{
if (part.isFile()) {
FilePart filePart = (FilePart) part;
String fileName = filePart.getFileName();
if (fileName != null) {
long size = filePart.writeTo(dir);
}
}
}
}
catch (IOException lEx) {
out.println("sorry!!!!"+lEx.toString());
//this.getServletContext().log(lEx, "error reading or saving file");
}
}
}
Gif file upload demo
请选择上传的文件
public class DemoParserUpload extends HttpServlet {
private string dir;
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
dir="c:temp";
PrintWriter out = response.getWriter();
response.setContentType("text/plain");
try {
MultipartParser mp = new MultipartParser(request, maxsize);
Part part;
while ((part = mp.readNextPart()) != null) {
String name = part.getName();
File comppath=new File(dir,name);
if (comppath.exists())
{
}
else
{
if (part.isFile()) {
FilePart filePart = (FilePart) part;
String fileName = filePart.getFileName();
if (fileName != null) {
long size = filePart.writeTo(dir);
}
}
}
}
catch (IOException lEx) {
out.println("sorry!!!!"+lEx.toString());
//this.getServletContext().log(lEx, "error reading or saving file");
}
}
}
|
javascript调用bean从理论上说不通,一个在客户端执行,一个在服务器端执行。
我建议在文件上传后判断是否存在该文件,如果存在的话讲之重新命名为一个临时文件,然后再返回给客户端一个页面进行必要的提示。
不可能一步到位。你无法预知客户端要上传的文件的文件名,因此必须是提交以后才能判断文件重名。
如果实在想一步到位的话,有一个不好的方法,在给客户端该页面时将服务器端的当前目录下的文件的文件名作为表单的隐含字段传给客户端,然后客户端在提交前使用javascript对文件名进行判断。
我建议在文件上传后判断是否存在该文件,如果存在的话讲之重新命名为一个临时文件,然后再返回给客户端一个页面进行必要的提示。
不可能一步到位。你无法预知客户端要上传的文件的文件名,因此必须是提交以后才能判断文件重名。
如果实在想一步到位的话,有一个不好的方法,在给客户端该页面时将服务器端的当前目录下的文件的文件名作为表单的隐含字段传给客户端,然后客户端在提交前使用javascript对文件名进行判断。
|
upupupupyuypupy