31
A
回答
59
兩種方式:
System.IO.FileInfo fileInfo = new System.IO.FileInfo(filePath);
fileInfo.IsReadOnly = true/false;
或
// Careful! This will clear other file flags e.g. FileAttributes.Hidden
File.SetAttributes(filePath, FileAttributes.ReadOnly/FileAttributes.Normal);
上FileInfo的IsReadOnly屬性本質上是做位翻轉你就必須在第二個方法做手工。
0
C#:
File.SetAttributes(文件路徑,FileAttributes.Normal);
File.SetAttributes(filePath,FileAttributes.ReadOnly);
33
要設置只讀標誌,實際上使文件不可寫:
File.SetAttributes(filePath,
File.GetAttributes(filePath) | FileAttributes.ReadOnly);
要刪除只讀標誌,實際上使文件可寫:
File.SetAttributes(filePath,
File.GetAttributes(filePath) & ~FileAttributes.ReadOnly);
要切換只讀標誌,使它的不管它是什麼,現在正好相反:
File.SetAttributes(filePath,
File.GetAttributes(filePath)^FileAttributes.ReadOnly);
這基本上是掩碼有效。您設置了一個特定的位來設置只讀標誌,您可以清除它以刪除該標誌。
請注意,上述代碼不會更改文件的任何其他屬性。換句話說,如果在執行上面的代碼之前文件被隱藏了,那麼它以後也會保持隱藏狀態。如果您只是將文件屬性設置爲.Normal
或.ReadOnly
,則最終可能會丟失進程中的其他標誌。
相關問題
- 1. 最好的方法在文件中寫
- 2. 在C++中比較文件更新的最佳方法?
- 3. 在c中寫入oo Lua接口的最佳方法?
- 4. C#中文本文件解析的最佳方法?
- 5. C#.NET中可滾動控件的最佳實踐方法
- 6. 在C#中讀寫cXML文檔的最佳方式是什麼?
- 7. 將對象寫入文本文件的最佳方法
- 8. 在c中編寫解析器的最佳/最快的方式#
- 9. 在Windows 7上用C++複製文件夾的最佳方法
- 10. 在android中的文件中寫入/讀取簡單值的最佳方法?
- 11. 在C++中一般封裝「可選」字段的最佳方法?
- 12. 在Typescript中使用C#-Ressources(ResX文件)的最佳方法是什麼?
- 13. C#,最快(最佳?)在目錄陣列中識別重複文件的方法
- 14. 在Ruby中寫入文件的最佳方式是什麼?
- 15. 編寫GUI的最佳方式(C++/Windows)
- 16. 將數組寫入文件的最佳方法是什麼?
- 17. 用Perl編寫gunzip文件的最佳方法是什麼?
- 18. Rails以特定間距寫入文件的最佳方法?
- 19. 將字節[]寫入二進制文件的最佳方法
- 20. 將結構寫入文件的最佳方法是什麼?
- 21. C中的最佳計時方法?
- 22. 壓縮.msi文件的最佳方法?
- 23. 解壓JavaScript文件的最佳方法
- 24. 觀察文件的最佳方法
- 25. 處理bibtex文件的最佳方法
- 26. CMake:「subprojecting」文件的最佳方法
- 27. 可視化:最佳方法?
- 28. 在原型方法中使用此方法的最佳方法
- 29. 在大文字文件中搜索的最佳方法
- 30. C#IDisposable使用方法:最佳實踐
你想讓文件只讀,每個問題或可寫(不是隻讀),每個問題標題? – 2009-07-29 18:19:56
這是基於Win2k操作系統的複雜問題。您可以爲文件提供只讀屬性,還有通過「權限」選項卡授予的寫入權限。前者只是一個建議,後者實際上是由操作系統強制執行的。 – Armentage 2009-07-29 18:30:40
@Armentage我不認爲這很複雜。文件標誌和NTFS權限集之間有明顯的區別,這個問題清楚地說明了第一種情況。 – 2009-07-30 04:46:08