public static void CopyFile(File file, String destination) { Console.WriteLine("Currently Processing: " + file.Name); destination = String.Concat(destination, file.Name); String source = file.Path; // Does destination file exist? // Don't copy if the last modified date of the file is the same as what is present in the directory if (!SystemFile.Exists(destination) || SystemFile.GetLastWriteTime(destination) <= SystemFile.GetLastWriteTime(source) && FileSystemUtilities.ExtensionIsSupported(source)) { try { System.IO.File.Copy(source, destination, true); } catch { Console.WriteLine("Couldn't copy at this time"); Console.WriteLine(source + "|" + destination); } } }
public static DateTime GetLinkerTime(this Assembly assembly) { return(File.GetLastWriteTime(assembly.Location)); }
private void Process(HttpListenerContext context) { var request = context.Request; if (request.HttpMethod == "OPTIONS") { context.Response.AddHeader("Access-Control-Allow-Origin", "*"); context.Response.AddHeader("Access-Control-Allow-Methods", "POST,GET,OPTIONS"); context.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With, File-Key"); } if (request.HttpMethod == "POST") { HandleUpload(context); return; } var filename = context.Request.Url.AbsolutePath; filename = filename.Substring(1); if (string.IsNullOrEmpty(filename)) { foreach ( var indexFile in _indexFiles.Where(indexFile => File.Exists(Path.Combine(_rootDirectory, indexFile)))) { filename = indexFile; break; } } filename = HttpUtility.UrlDecode(Path.Combine(_rootDirectory, filename)); if (File.Exists(filename)) { try { Stream input = new FileStream(filename, FileMode.Open); //Adding permanent http response headers string mime; context.Response.ContentType = MimeTypeMappings.TryGetValue(Path.GetExtension(filename), out mime) ? mime : "application/octet-stream"; context.Response.ContentLength64 = input.Length; context.Response.AddHeader("Date", DateTime.Now.ToString("r")); context.Response.AddHeader("Last-Modified", File.GetLastWriteTime(filename).ToString("r")); context.Response.AddHeader("Access-Control-Allow-Origin", "*"); var buffer = new byte[1024 * 16]; int nbytes; while ((nbytes = input.Read(buffer, 0, buffer.Length)) > 0) { context.Response.OutputStream.Write(buffer, 0, nbytes); } input.Close(); context.Response.OutputStream.Flush(); context.Response.StatusCode = (int)HttpStatusCode.OK; } catch (Exception) { context.Response.StatusCode = (int)HttpStatusCode.InternalServerError; } } else { if (request.Url.AbsolutePath.Contains("upload")) { context.Response.StatusCode = 200; } else { context.Response.StatusCode = (int)HttpStatusCode.NotFound; } } context.Response.OutputStream.Close(); }
public static System.DateTime GetLastWriteTime(string path) => MSIOF.GetLastWriteTime(path);
public static DateTime GetLastWriteTime(string path) { return(File.GetLastWriteTime(path)); }
public string GetModifiedDate(string format = "M-d-yy") { return(SystemFile.GetLastWriteTime(this.path).ToString(format)); }
private bool IsFreshEnough(string source) { TimeSpan ageInMillis = DateTime.Now.Subtract(File.GetLastWriteTime(source)); return(ageInMillis.TotalMilliseconds < FRESH_ENOUGH_MILLIS); }
void DoFiles(DefaultWatcherData data, string directory, bool dispatch) { bool direxists = Directory.Exists(directory); if (direxists && data.IncludeSubdirs) { foreach (string d in Directory.GetDirectories(directory)) { DoFiles(data, d, dispatch); } } string [] files = null; if (!direxists) { files = NoStringsArray; } else if (!data.NoWildcards) { files = Directory.GetFileSystemEntries(directory, data.FileMask); } else { // The pattern does not have wildcards if (File.Exists(data.FileMask) || Directory.Exists(data.FileMask)) { files = new string [] { data.FileMask } } ; else { files = NoStringsArray; } } /* Set all as untested */ foreach (string filename in data.Files.Keys) { FileData fd = (FileData)data.Files [filename]; if (fd.Directory == directory) { fd.NotExists = true; } } /* New files */ foreach (string filename in files) { FileData fd = (FileData)data.Files [filename]; if (fd == null) { try { data.Files.Add(filename, CreateFileData(directory, filename)); } catch { // The file might have been removed in the meanwhile data.Files.Remove(filename); continue; } if (dispatch) { DispatchEvents(data.FSW, FileAction.Added, filename); } } else if (fd.Directory == directory) { fd.NotExists = false; } } if (!dispatch) // We only initialize the file list { return; } /* Removed files */ ArrayList removed = null; foreach (string filename in data.Files.Keys) { FileData fd = (FileData)data.Files [filename]; if (fd.NotExists) { if (removed == null) { removed = new ArrayList(); } removed.Add(filename); DispatchEvents(data.FSW, FileAction.Removed, filename); } } if (removed != null) { foreach (string filename in removed) { data.Files.Remove(filename); } removed = null; } /* Changed files */ foreach (string filename in data.Files.Keys) { FileData fd = (FileData)data.Files [filename]; DateTime creation, write; try { creation = File.GetCreationTime(filename); write = File.GetLastWriteTime(filename); } catch { /* Deleted */ if (removed == null) { removed = new ArrayList(); } removed.Add(filename); DispatchEvents(data.FSW, FileAction.Removed, filename); continue; } if (creation != fd.CreationTime || write != fd.LastWriteTime) { fd.CreationTime = creation; fd.LastWriteTime = write; DispatchEvents(data.FSW, FileAction.Modified, filename); } } if (removed != null) { foreach (string filename in removed) { data.Files.Remove(filename); } } }