Tôi có một tệp cần phải ghi vào vị trí tạm thời, địa điểm nào tốt nhất trong Windows? Tập tin này không cần phải di chuyển vì tôi cần phải đọc nó một vài lần và vứt bỏ nó khi tôi đóng chương trình.Vị trí chính xác để lưu tệp tạm thời trong Windows?
Trả lời
sử dụng
Path.GetTempPath();
hoặc
Path.GetTempFileName();
Như nhà bình luận chỉ ra, GetTempFileName() là không threadsafe - nhưng bạn có thể xây dựng tên tập tin duy nhất dựa trên GUID.
Sử dụng Windows API chức năng GetTempPath()
từ System.IO.Path
(xem MSDN)
using System.IO
...
myTempPath = Path.GetTempPath();
Bạn nên biết rằng hệ thống tập tin cũng có thể thay đổi trong quá trình thực hiện của chương trình của bạn. Đường dẫn tạm thời có thể thay đổi (không thể, được cấp) hoặc tệp tạm thời của bạn có thể đã bị người dùng di chuyển hoặc xóa.
Hãy chuẩn bị để kiểm tra sự tồn tại của nó mỗi khi bạn truy cập và xử lý trường hợp khi nó không được tìm thấy một cách duyên dáng.
Những người khác đánh tôi để nó về
System.IO.Path.GetTempPath()
Nhưng bạn cũng có thể nhìn vào thư mục dữ liệu ứng dụng. Điều đó sẽ cho phép bạn kiểm soát nhiều hơn đối với tệp của mình, như khả năng có 1 lượt chia sẻ cho tất cả người dùng hoặc 1 người dùng cho mỗi người dùng.
Application.CommonAppDataPath
Application.UserAppDataPath
Nếu bạn cần ứng dụng của bạn để viết thư cho một vị trí tạm thời và làm việc tại tin tưởng một phần, bạn sẽ cần phải nhìn vào IsolatedStorage.
Nếu bạn muốn xây dựng tên tập tin tùy chỉnh tạm thời của riêng bạn trong tham chiếu đến một vị trí tạm thời, tôi sử dụng một cái gì đó như thế này, để lột PATH và áp dụng tên tập tin của riêng tôi ...
string wsPDFfile = Path.GetTempPath() + wsStudentID + "_" + Path.GetFileNameWithoutExtension(Path.GetTempFileName()) + ".pdf";
- 1. Đâu là nơi tốt nhất để lưu các tệp tạm thời trong Windows
- 2. Ghi tệp vào các vị trí tạm thời
- 3. Lưu tệp tạm thời
- 4. ASP.NET - Lưu trữ các tệp tạm thời
- 5. Tạm thời PYTHONPATH trong Windows
- 6. Vị trí không gian tạm thời miễn phí của Hudson
- 7. Vị trí thư mục tạm thời Tomcat được xác định như thế nào?
- 8. Tệp tạm thời trong .Net
- 9. Làm cách nào để hiển thị chính xác vị trí/thời lượng của MediaPlayer?
- 10. HSQLDB Bảng tạm thời được lưu trong bộ nhớ tạm
- 11. Nơi để ghi các tệp tạm thời của tôi vào?
- 12. Quản lý tệp mặc định của Studio lưu vị trí
- 13. Mở vị trí tệp
- 14. Cách nhận tem thời gian chính xác từ vị trí Android GPS
- 15. Vị trí chính xác để lưu trữ dữ liệu ứng dụng cụ thể của tôi ở đâu?
- 16. Flex hỗ trợ chính xác vị trí bison?
- 17. C# WPF: thanh trượt đến vị trí chính xác
- 18. Vị trí bản đồ Google không chính xác khi tải
- 19. Vị trí DB DB không được đặt chính xác - netbeans
- 20. SIFT Vị trí điểm chính
- 21. xử lý nhiều tệp tạm thời nhỏ
- 22. nodejs - Tên tệp tạm thời
- 23. Làm thế nào để bạn xếp hàng TPopupMenu để nó chính xác vị trí chính nó trên một nút?
- 24. Vị trí dữ liệu chính với ngày
- 25. Ứng dụng Spotify/vị trí thư mục chính (Windows phát triển địa phương)?
- 26. Mở tệp tạm thời trước khi tệp được lưu trong mô hình Rails
- 27. Vị trí tệp đính kèm trong JIRA
- 28. Thay đổi .gitconfig vị trí trên Windows
- 29. PHP lưu tệp tạm thời trong khi tải lên ở đâu?
- 30. Thời gian hệ thống Windows với mili giây chính xác
Lưu ý rằng GetTenpFileName sức mạnh cần phải được gọi là nhiều thời gian do điều kiện đua vốn có (một cái gì đó khác có thể tạo ra cùng một tập tin giữa trở về từ GetTempFileName và mở tập tin). – Richard
bạn nói đúng, cảm ơn für thông tin – tanascius
@Richard Bạn có nghĩa là một ứng dụng/quy trình hoặc một luồng khác trong ngữ cảnh ** ứng dụng ** của bạn không? –