Ответ 1
Вы не можете этого сделать. Запрос HTTP-сообщения не содержит эту информацию о загруженном файле.
Я разрабатываю веб-сайт, на котором клиент загружает некоторые файлы документов, такие как doc, docx, htm, html, txt, pdf и т.д. Я хочу получить последнюю измененную дату загруженного файла. Я создал один обработчик (.ashx), который выполняет работу по сохранению файлов.
Following is the code:
HttpPostedFile file = context.Request.Files[i];
string fileName = file.FileName;
file.SaveAs(Path.Combine(uploadPath, filename));
Как вы можете видеть, очень просто сохранить файл, используя метод file.SaveAs(). Но этот класс HttpPostedFile не предоставляет никакого свойства для получения последней измененной даты файла.
Так может ли кто-нибудь сказать мне, как получить последнюю измененную дату файла, прежде чем сохранять его на жесткий диск?
Вы не можете этого сделать. Запрос HTTP-сообщения не содержит эту информацию о загруженном файле.
Рау,
Вы можете получить только дату на сервере. Если с этим все в порядке, попробуйте:
string strLastModified =
System.IO.File.GetLastWriteTime(Server.MapPath("myFile.txt")).ToString("D");
дальнейшее предостережение в том, что это дата и время будет датой, когда оно было сохранено на сервере, а не дата и время исходного файла.
Сегодня вы можете получить доступ к этой информации с клиентской стороны, используя HTML5 api
//fileInput is a HTMLInputElement: <input type="file" multiple id="myfileinput">
var fileInput = document.getElementById("myfileinput");
// files is a FileList object (simliar to NodeList)
var files = fileInput.files;
for (var i = 0; i < files.length; i++) {
alert(files[i].name + " has a last modified date of " + files[i].lastModifiedDate);
}
Это невозможно, пока вы не сохраните файл на диск.
Обычно вы не можете получить последнюю измененную дату, поскольку дата не сохраняется в файле.
В операционной системе фактически хранятся атрибуты файлов, такие как "Создано", "Доступ" и "Последнее изменение". См. Где сохранены "последние измененные даты" и "дата последнего доступа" ?
(Обычно я говорю, что некоторые типы файлов, например изображения, могут иметь EXIF данные тега, такие как дата/время, когда была сделана фотография.)