私がやりたいことは、読み取り専用ファイルを上書きすることです。読み込み/書き込みファイル。C#File.FileMode.Createを使用して読み取り専用ファイルを開きます。
私がFile.Open(file, FileMode.Create)
を使用すると、ファイルが存在する場合、ファイルが削除され、新しいファイルが作成されます。 (私はそれが存在する場合、それは単にファイルを開き、内容を取り除くと思うが、それは読み書きとして出会ったファイルに対処できないからである)。
私は別のFileAccess
列挙型を試しましたが、どれも私を助けてくれないようです(私はUnauthorizedAccessException
を得ています)。
回避策は、私がFile.Open
にしようとする前にファイルを読み書きするように設定して、これを行う唯一の方法ですか?
ありがとうございます。
ドキュメントには、作成でファイルを開くには書き込み権限が必要です。例外を投げることは悪いことだとは思えません。むしろ、.NETは読み込み専用ファイルであると私に通知しました。あなたの回避策は私にとって完全に有効な明示的な解決策のようです。 – starskythehutch
例外をスローすることは悪いことではありませんが、毎回それを上書きできるようにする必要があります。 –