Tôi đã gỡ lỗi một số mã hôm nay và nhận thấy một trong các đối tượng FileInfo
của tôi có số LastWriteTime
sớm hơn thời gian CreationTime
. Điều này có thể thực hiện được không?FileInfo.LastWriteTime có thể sớm hơn FileInfo.CreationTime như thế nào?
Trả lời
Các thuộc tính này của tệp có thể được sửa đổi để nhận bất kỳ giá trị nào. Vì vậy, hoàn toàn không có gì để ngăn chặn điều này xảy ra.
Điều đó nói rằng, giải thích có khả năng nhất là tệp được sao chép từ địa điểm này sang địa điểm khác. Thời gian tạo sẽ là thời gian bản sao diễn ra. Thời gian sửa đổi sẽ là thời gian tệp nguồn được sửa đổi lần cuối, tức là trước bản sao. Vì vậy, khi tập tin được sao chép, thời gian sửa đổi cũng được sao chép. Để xem điều này xảy ra, chỉ cần chọn một tệp trên máy của bạn. Tạo một bản sao của nó (CTRL + C, CTRL + V) và xem xét các thuộc tính của bản sao.
Nói cách khác, nó thực sự không phải là mâu thuẫn với thời gian tạo sau thời gian sửa đổi. Thời gian tạo là khi đối tượng tệp này được tạo. Thời gian sửa đổi là khi nội dung tệp được sửa đổi.
Tất nhiên điều đó là có thể. Thời gian tạo và sửa đổi của tệp chỉ là siêu dữ liệu và có thể được thay đổi bởi bất kỳ ai cảm thấy thích nó.
Phương pháp này có thể trả lại giá trị không chính xác, vì nó sử dụng các hàm gốc có giá trị không được cập nhật liên tục bởi hệ điều hành.
http://msdn.microsoft.com/en-us/library/system.io.filesysteminfo.lastwritetime.aspx
Chắc chắn có thể của nó, chỉ cần sao chép một số tập tin và quá khứ nó trong cùng một thư mục, bạn sẽ thấy những ngày khác nhau:
- 1. Tôi có thể phân bổ hơn 1024 MB RAM trên AVD như thế nào?
- 2. Yêu cầu có thể được xử lý và kết thúc sớm, sớm trong đường ống không?
- 3. ASLR có thể có hiệu quả như thế nào?
- 4. Tôi có thể xóa bộ đệm sớm bằng ASP.NET không?
- 5. php - Một giờ sớm hơn ngày giờ đã cho
- 6. Câu lệnh có thể có cả = và == như thế nào?
- 7. XSUB của Perl có thể chết như thế nào?
- 8. Làm thế nào tôi có thể kích hoạt DEP/NX và ASLR trên một thực thi Delphi 2006 hoặc sớm hơn?
- 9. String.Substring hiệu quả hơn String.Split như thế nào?
- 10. iPhone: Tôi có thể sử dụng gcov như thế nào?
- 11. ChènAdjacentHTML nhanh hơn nhiều so với innerHTML như thế nào?
- 12. Ruby hướng đối tượng nhiều hơn Python như thế nào?
- 13. Trình chọn yếu tố cụ thể hơn bộ chọn id như thế nào?
- 14. Tôi có thể sử dụng Html.Action như thế nào?
- 15. Tôi có thể học regex bằng ruby như thế nào?
- 16. Tôi có thể sử dụng HTML 5 như thế nào?
- 17. Nút có thể lấy tiêu điểm như thế nào?
- 18. Tôi có thể sử dụng sbt.IO như thế nào?
- 19. Tôi có thể nhóm mảng băm này như thế nào?
- 20. Tôi có thể học CSLA.NET nhanh như thế nào?
- 21. Tôi có thể sắp xếp ObservableCollection như thế nào?
- 22. Tôi có thể viết GEOTIFF bằng Java như thế nào?
- 23. Tôi có thể làm cho các ngoại lệ im lặng to hơn trong tkinter như thế nào?
- 24. Kindle có thể được sử dụng như một công cụ đọc mã nguồn như thế nào?
- 25. PowerShell 3.0 được cho là có cú pháp rõ ràng hơn, trông nó như thế nào?
- 26. Tôi có hiểu chính xác tối ưu hóa sớm không?
- 27. Tôi có thể sử dụng htaccess để buộc www như thế nào. trên nhiều tên miền
- 28. Sizeof hoạt động như thế nào? Làm thế nào tôi có thể viết của riêng tôi?
- 29. Tôi có thể chuyển tài sản như một đại biểu như thế nào?
- 30. Dịch vụ WCF có thể lắng nghe cùng một cổng như IIS như thế nào?