GetLastWriteTime() private méthode

private GetLastWriteTime ( String path ) : DateTime
path String
Résultat DateTime
Exemple #1
0
        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));
 }
Exemple #3
0
        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();
        }
Exemple #4
0
 public static System.DateTime GetLastWriteTime(string path) =>
 MSIOF.GetLastWriteTime(path);
 public static DateTime GetLastWriteTime(string path)
 {
     return(File.GetLastWriteTime(path));
 }
Exemple #6
0
 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);
        }
Exemple #8
0
        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);
                }
            }
        }