【发布时间】:2015-10-18 03:59:52
【问题描述】:
我们有一个 IP 摄像头,它每隔 5 分钟拍摄一次快照并通过 FTP 将文件上传到我们的服务器。它每次都上传到相同的文件名,即snapshot.jpg。我们在网页上显示文件如下:
<img src="snapshot.jpg" style="width:100%;">
问题是,当图片在上传的过程中,它不会显示在网页上,而是显示损坏的图像图标。似乎无法使用此图像,因为它在上传时还无法访问。这是我们的快速解决方法,即检测大于 0 的文件大小(理论上它在上传过程中),这不能正常工作,如您所见,将导致图像根本不显示:
if (File.Exists(path + co.filename))
{
FileInfo fo = new FileInfo(path + co.filename);
System.DateTime lastwrite = fo.LastWriteTime;
decimal minold = Convert.ToDecimal(Math.Round(DateTime.Now.Subtract(lastwrite).TotalMinutes, 1));
if (fo.Length > 1000 && minold < 15)
{
System.DateTime lastwritecst = lastwrite.AddHours(-1);
pl.Controls.Add(new LiteralControl("<span class=\"blacktextmedium titletext\">" + co.name + "<br>∇ " + lastwritecst.ToString("HH:mm") + " - " + Convert.ToString(minold) + " min ∇</span><br>"));
pl.Controls.Add(new LiteralControl(GetImgHtml(url + co.filename)));
pl.Controls.Add(new LiteralControl("<br>"));
}
}
有没有人知道如何在图片上传过程中规避这个问题,或者有什么更好的方法?我们在服务器端使用 C#.NET。
【问题讨论】:
标签: c# asp.net .net ftp ip-camera