方法: My Documents ディレクトリのファイルにテキストを書き込む (Visual Basic)How to: Write Text to Files in the My Documents Directory in Visual Basic

My.Computer.FileSystem.SpecialDirectories オブジェクトを使うと、 [MyDocuments] ディレクトリなどの特別なディレクトリにアクセスできます。The My.Computer.FileSystem.SpecialDirectories object allows you to access special directories, such as the MyDocuments directory.

プロシージャProcedure

[MyDocuments] ディレクトリに新しいテキスト ファイルを書き込むにはTo write new text files in the My Documents directory

  1. My.Computer.FileSystem.SpecialDirectories.MyDocuments プロパティを使ってパスを指定します。Use the My.Computer.FileSystem.SpecialDirectories.MyDocuments property to supply the path.

    Dim filePath As String
    filePath = System.IO.Path.Combine(
    My.Computer.FileSystem.SpecialDirectories.MyDocuments, "test.txt")
    
  2. WriteAllText メソッドを使って、指定したファイルにテキストを書き込みます。Use the WriteAllText method to write text to the specified file.

    My.Computer.FileSystem.WriteAllText(filePath, "some text", True)
    

Example

Try
    Dim filePath As String
    filePath = System.IO.Path.Combine(
               My.Computer.FileSystem.SpecialDirectories.MyDocuments, "test.txt")
    My.Computer.FileSystem.WriteAllText(filePath, "some text", False)
Catch fileException As Exception
    Throw fileException
End Try

コードのコンパイルCompiling the Code

test.txt を、実際に書き込むファイルの名前に置き換えます。Replace test.txt with the name of the file you want to write to.

信頼性の高いプログラミングRobust Programming

このコードでは、ファイルにテキストを書き込むときに発生する可能性のあるすべての例外が再スローされます。This code rethrows all the exceptions that may occur when writing text to the file. ユーザーの選択肢を有効なファイル名に制限する OpenFileDialog コンポーネントや SaveFileDialog コンポーネントなどの Windows フォーム コントロールを使うことで、例外が発生する可能性を減らすことができます。You can reduce the likelihood of exceptions by using Windows Forms controls such as the OpenFileDialog and the SaveFileDialog components that limit the user choices to valid file names. ただし、これらのコントロールを使ったからといって例外がまったくなくなるわけではありません。Using these controls is not foolproof, however. ユーザーがファイルを選んだ時点から、コードが実行される時点までの間に、ファイル システムが変化する可能性があります。The file system can change between the time the user selects a file and the time that the code executes. ですから、ファイルを操作するときはほとんど常に、例外処理が必要になります。Exception handling is therefore nearly always necessary when with working with files.

.NET Framework のセキュリティ.NET Framework Security

部分的に信頼されているコンテキストで実行している場合は、特権不足のため例外がスローされることがあります。If you are running in a partial-trust context, the code might throw an exception due to insufficient privileges. 詳しくは、「コード アクセス セキュリティの基礎」をご覧ください。For more information, see Code Access Security Basics.

この例では、新しいファイルを作成します。This example creates a new file. アプリケーションでファイルを作成する必要がある場合、そのアプリケーションにはフォルダーに対する Create アクセス許可が必要です。If an application needs to create a file, that application needs Create permission for the folder. アクセス許可は、アクセス制御リストを使って設定します。Permissions are set using access control lists. ファイルが既に存在する場合、アプリケーションに必要なのは低い権限の Write アクセス許可だけです。If the file already exists, the application needs only Write permission, a lesser privilege. 可能な場合は、フォルダーに対する Create アクセス許可を付与するのではなく、展開の間にファイルを作成しておき、1 つのファイルの Read アクセス許可を付与するだけの方が安全です。Where possible, it is more secure to create the file during deployment, and only grant Read privileges to a single file, rather than to grant Create privileges for a folder. また、ルート フォルダーや [Program Files] フォルダーにデータを書き込むより、ユーザー フォルダーに書き込む方が安全です。Also, it is more secure to write data to user folders than to the root folder or the Program Files folder. 詳しくは、「アクセス制御リスト (ACL: Access Control List) 技術の概要」をご覧ください。For more information, see ACL Technology Overview.

参照See also