File.CreateText メソッド
UTF-8 エンコードされたテキストの書き込み用にファイルを作成または開きます。
Public Shared Function CreateText( _
ByVal path As String _) As StreamWriter
[C#]
public static StreamWriter CreateText(stringpath);
[C++]
public: static StreamWriter* CreateText(String* path);
[JScript]
public static function CreateText(
path : String) : StreamWriter;
パラメータ
- path
書き込み用に開かれるファイル。
戻り値
UTF-8 エンコーディングを使用して指定したファイルに書き込まれる StreamWriter 。
例外
例外の種類 | 条件 |
---|---|
UnauthorizedAccessException | 呼び出し元に、必要なアクセス許可がありません。 |
ArgumentException | path が、長さが 0 の文字列であるか、空白しか含んでいないか、または InvalidPathChars で定義されている無効な文字を 1 つ以上含んでいます。 |
ArgumentNullException | path が null 参照 (Visual Basic では Nothing) です。 |
PathTooLongException | 指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windows ベースのプラットフォームの場合、パスの長さは 248 文字未満、ファイル名の長さは 260 文字未満である必要があります。 |
DirectoryNotFoundException | 割り当てられていないドライブであるなど、指定されたパスが無効です。 |
NotSupportedException | path の形式が無効です。 |
解説
このメソッドは、 append パラメータを false に設定した StreamWriter(String, Boolean) と等価です。 path で指定したファイルが存在しない場合は、ファイルが作成されます。ファイルが存在する場合、その内容は上書きされます。ファイルが開いている間、追加のスレッドはファイルの読み取りを許可されます。
path パラメータは、相対パス情報または絶対パス情報を指定することを許可されています。相対パス情報は、現在の作業ディレクトリに対して相対的に解釈されます。現在の作業ディレクトリを取得するには、 GetCurrentDirectory のトピックを参照してください。
このメソッドの使用例については、以下の「使用例」を参照してください。その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。
実行するタスク | 参考例があるトピック |
---|---|
テキスト ファイルに書き込む。 | ファイルへのテキストの書き込み |
テキスト ファイルから読み取る。 | ファイルからのテキストの読み取り |
テキストをファイルに追加する。 | ログ ファイルのオープンと追加 |
ファイルをコピーする。 | File.Copy |
ファイルの名前を変更、またはファイルを移動する。 | File.Move |
ファイルを削除する。 | File.Delete |
バイナリ ファイルから読み取る。 | 新しく作成したデータ ファイルの読み取りと書き込み |
バイナリ ファイルに書き込む。 | 新しく作成したデータ ファイルの読み取りと書き込み |
ディレクトリを作成する。 | CreateDirectory |
使用例
[Visual Basic, C#, C++] テキストの書き込み用および読み取り用にファイルを作成する例を次に示します。
Imports System
Imports System.IO
Imports System.Text
Public Class Test
Public Shared Sub Main()
Dim path As String = "c:\temp\MyTest.txt"
If File.Exists(path) = False Then
' Create a file to write to.
Dim sw As StreamWriter = File.CreateText(path)
sw.WriteLine("Hello")
sw.WriteLine("And")
sw.WriteLine("Welcome")
sw.Flush()
sw.Close()
End If
' Open the file to read from.
Dim sr As StreamReader = File.OpenText(path)
Do While sr.Peek() >= 0
Console.WriteLine(sr.ReadLine())
Loop
sr.Close()
End Sub
End Class
[C#]
using System;
using System.IO;
class Test
{
public static void Main()
{
string path = @"c:\temp\MyTest.txt";
if (!File.Exists(path))
{
// Create a file to write to.
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine("Hello");
sw.WriteLine("And");
sw.WriteLine("Welcome");
}
}
// Open the file to read from.
using (StreamReader sr = File.OpenText(path))
{
string s = "";
while ((s = sr.ReadLine()) != null)
{
Console.WriteLine(s);
}
}
}
}
[C++]
#using <mscorlib.dll>
using namespace System;
using namespace System::IO;
int main() {
String* path = S"c:\\temp\\MyTest.txt";
if (!File::Exists(path)) {
// Create a file to write to.
StreamWriter* sw = File::CreateText(path);
try {
sw->WriteLine(S"Hello");
sw->WriteLine(S"And");
sw->WriteLine(S"Welcome");
} __finally {
if (sw) __try_cast<IDisposable*>(sw)->Dispose();
}
}
// Open the file to read from.
StreamReader* sr = File::OpenText(path);
try {
String* s = S"";
while (s = sr->ReadLine()) {
Console::WriteLine(s);
}
} __finally {
if (sr) __try_cast<IDisposable*>(sr)->Dispose();
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard
.NET Framework セキュリティ:
- FileIOPermission 。 FileIOPermissionAccess.Write (関連する列挙体)
参照
File クラス | File メンバ | System.IO 名前空間 | 入出力操作 | ファイルからのテキストの読み取り | ファイルへのテキストの書き込み | 基本のファイル I/O | 新しく作成したデータ ファイルの読み取りと書き込み