using (FileStream fs = new FileStream(Server.MapPath("~/uploadimg/" + fileName), chunk == 0 ? FileMode.OpenOrCreate : FileMode.Append))
{
//write our input stream to a buffer
Byte[] buffer = null;
if (Request.ContentType == "application/octet-stream" && Request.ContentLength > 0)
{
buffer = new Byte[Request.InputStream.Length];
Request.InputStream.Read(buffer, 0, buffer.Length);
}
else if (Request.ContentType.Contains("multipart/form-data") && Request.Files.Count > 0 && Request.Files[0].ContentLength > 0)
{
buffer = new Byte[Request.Files[0].InputStream.Length];
Request.Files[0].InputStream.Read(buffer, 0, buffer.Length);
}
//write the buffer to a file.
fs.Write(buffer, 0, buffer.Length);
fs.Close();
}
我的意思是在 fs.Write(buffer, 0, buffer.Length);后面判断,文件是否已经写完了,这样,可以操作数据库了,判断文件存在不行,因为,这个文件如果分3次过来的,第一次后,已经在服务器端建立了这个文件。就是怎么检查这个文件已经完整了,因为这个程序需要flash不断的请求,只要没写完
关注学习。。。
我没看你的代码,不过我有个方法你看怎么样。上传文件时把文件名加.tmp后缀,上传完毕后再改成正确的扩展名。接收端的程序判断文件扩展名就可以知道文件是否上传完毕了。
支持楼上