public FileData GetFileInfo(string sQuery, string myFile)
{
sQuery = MakeFilePathUniform(sQuery);
string sPath = MakeFileFolderPath(sQuery);
string myFileName = String.Empty;
DateTime myFileDate = Convert.ToDateTime("1899-01-01"); ;
string myFileSizeF = String.Empty;
long myFileSize;
FileData f = new FileData();
f.FileName = myFile;
myFileName = Path.GetFileName(myFile).Trim();
if (myFileName.Length > 0 && File.Exists(sPath + "/" + myFileName)) {
FileInfo MyFile = new FileInfo(sPath + "/" + myFileName);
myFileDate = File.GetLastWriteTime(MyFile.FullName);
myFileSize = MyFile.Length;
myFileSizeF = myFileSize.ToString() + " B";
if (myFileSize > 1500) {
if (myFileSize > (1024 * 1024)) {
myFileSizeF = (Convert.ToDouble(Convert.ToInt32((myFileSize * 100) / (1024 * 1024))) / 100).ToString() + " MB";
} else {
myFileSizeF = (Convert.ToDouble(Convert.ToInt32((myFileSize * 100) / 1024)) / 100).ToString() + " KB";
}
}
string sP = sQuery;
f.FileName = myFileName;
f.FolderPath = MakeFilePathUniform(sP);
f.FileDate = myFileDate;
f.FileSize = myFileSize;
f.FileSizeFriendly = myFileSizeF;
if (!string.IsNullOrEmpty(MyFile.Extension)) {
f.FileExtension = MyFile.Extension.ToLowerInvariant();
} else {
f.FileExtension = ".";
}
f.MimeType = "text/plain";
try {
if ((from b in MimeTypes
where b.Key.ToLowerInvariant() == f.FileExtension.ToLowerInvariant()
select b).Count() > 0) {
f.MimeType = (from b in MimeTypes
where b.Key.ToLowerInvariant() == f.FileExtension.ToLowerInvariant()
select b.Value).FirstOrDefault();
}
} catch (Exception ex) { }
}
return f;
}