そのため、フォームの開始時にファイルをロードします。そのフォームに「保存ボタン」があります。クリックすると、richtextbox.Savefileメソッドでファイルを上書きしたいです。しかし、「パスへのアクセス..が拒否されました」というメッセージが表示されます
私はこれをチェックして得ました:
- 現在のユーザーの権限はすべて付与されています
- デバッグ フォルダには「読み取り専用」があります -- 削除しようとしましたが、常に戻ってきます
さて、フォームを閉じたときだけプログラムがリソース(ファイル)を解放しないと思います
これを強制する方法はありますか?(ファイルはRAMメモリにロードされたままだと思います)
もう 1 つ: SaveFile メソッドと LoadFile メソッドを使用する必要があります。私はRTFファイルを扱っていますが、私のコードは、このメソッドが最適な仕事をするようになっています.
public EditareArticol(string path,List<capitol>chapters,Object[,]lca)
{
this.richTextBoxEx1.LoadFile(path, RichTextBoxStreamType.RichText);
}
private void saveToolStripButton_Click(object sender, EventArgs e)
{
richTextBoxEx1.SaveFile("articles\\" +
textBox1.Text + ".dat",
RichTextBoxStreamType.RichText);
File.SetAttributes("articles\\" + textBox1.Text + ".dat", File.GetAttributes("articles\\" + textBox1.Text + ".dat") | FileAttributes.Hidden);
}
編集:
特定のファイルのハンドルがすべてだと思います。
MSDN ドキュメントから:
LoadFile メソッドは、RichTextBox のハンドルが作成されるまでファイルを開きません。LoadFile メソッドを呼び出す前に、コントロールのハンドルが作成されていることを確認してください。