クリックして評価とフィードバックをお寄せください
MSDN
MSDN ライブラリ
.NET 開発
.NET Framework SDK 2.0
System.IO
StreamWriter クラス
StreamWriter コンストラクタ
 StreamWriter コンストラクタ (String, Boole...
すべて縮小/すべて展開 すべて縮小
このページは次のバージョンについて記述しています。
Microsoft Visual Studio 2005/.NET Framework 2.0

その他のバージョンについては、以下の情報を参照してください。
.NET Framework クラス ライブラリ
StreamWriter コンストラクタ (String, Boolean)

既定のエンコーディングとバッファ サイズを使用して、指定したパス上の指定したファイル用の StreamWriter クラスの新しいインスタンスを初期化します。ファイルが存在する場合は、ファイルを上書きするか、またはファイルの末尾に追加できます。ファイルが存在しない場合は、このコンストラクタが新しいファイルを作成します。

名前空間: System.IO
アセンブリ: mscorlib (mscorlib.dll 内)

Visual Basic (宣言)
Public Sub New ( _
    path As String, _
    append As Boolean _
)
Visual Basic (使用法)
Dim path As String
Dim append As Boolean

Dim instance As New StreamWriter(path, append)
C#
public StreamWriter (
    string path,
    bool append
)
C++
public:
StreamWriter (
    String^ path, 
    bool append
)
J#
public StreamWriter (
    String path, 
    boolean append
)
JScript
public function StreamWriter (
    path : String, 
    append : boolean
)

パラメータ

path

書き込まれる完全なファイルパス。

append

データをファイルの末尾に追加するかどうかを判断します。ファイルが存在し、appendfalse の場合は、ファイルが上書きされます。ファイルが存在し、appendtrue の場合は、データがファイルの末尾に追加されます。それ以外の場合は、新しいファイルが作成されます。

例外の種類条件

UnauthorizedAccessException

アクセスが拒否されました。

ArgumentException

path が空です。

または

path には、システム デバイスの名前 (com1、com2 など) が含まれます。

ArgumentNullException

path が null 参照 (Visual Basic では Nothing) です。

DirectoryNotFoundException

割り当てられていないドライブであるなど、指定されたパスが無効です。

IOException

path には、ファイル名、ディレクトリ名、またはボリューム ラベルの不正な構文または無効な構文が含まれています。

PathTooLongException

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。たとえば、Windows ベースのプラットフォームの場合、パスの長さは 248 文字未満、ファイル名の長さは 260 文字未満である必要があります。

SecurityException

呼び出し元に、必要なアクセス許可がありません。

このコンストラクタは、バイト順マーク (BOM) のない UTF-8 エンコーディングを使用して StreamWriter を作成するため、GetPreamble メソッドは空のバイト配列を返します。詳細については、Encoding のトピックを参照してください。

path パラメータにはファイル名も指定できます。このファイルには、UNC 共有のファイルも含まれます。

path パラメータは、ディスクに格納されているファイルにする必要はありません。ストリームによるアクセスをサポートするシステム上の任意の部分を指定できます。

注意に関するメモ注意

特定のカルチャ設定で文字セットをコンパイルし、同じ文字を異なるカルチャ設定で取得すると、文字が正しく解釈されない場合があり、例外がスローされることもあります。

このメソッドの使用例については、「使用例」を参照してください。その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。

実行するタスク

参考例があるトピック

テキスト ファイルを作成する。

方法 : ファイルにテキストを書き込む

テキスト ファイルに書き込む。

方法 : ファイルにテキストを書き込む

テキスト ファイルから読み取る。

方法 : ファイルからテキストを読み取る

テキストをファイルに追加する。

方法 : ログ ファイルを開いて情報を追加する

File.AppendText

FileInfo.AppendText

ファイルのサイズを取得する。

FileInfo.Length

ファイルの属性を取得する。

File.GetAttributes

ファイルの属性を設定する。

File.SetAttributes

ファイルが存在するかどうかを判別する。

File.Exists

バイナリ ファイルから読み取る。

方法 : 新しく作成されたデータ ファイルに対して読み書きする

バイナリ ファイルに書き込む。

方法 : 新しく作成されたデータ ファイルに対して読み書きする

StreamWriter コンストラクタのコード例を次に示します。

Visual Basic
Public Sub CreateTextFile(ByVal FileName As String, _
    ByVal TextToAdd As String)

    Dim Fs As FileStream = New FileStream(FileName, _
        FileMode.CreateNew, FileAccess.Write, FileShare.None)

    Dim SwFromFile As StreamWriter = New StreamWriter(FileName)
    SwFromFile.Write(TextToAdd)
    SwFromFile.Flush()
    SwFromFile.Close()

    Dim SwFromFileStream As StreamWriter = New StreamWriter(Fs)
    SwFromFileStream.Write(TextToAdd)
    SwFromFileStream.Flush()
    SwFromFileStream.Close()

    Dim SwFromFileStreamDefaultEnc As StreamWriter = _
     New StreamWriter(Fs, System.Text.Encoding.Default)
    SwFromFileStreamDefaultEnc.Write(TextToAdd)
    SwFromFileStreamDefaultEnc.Flush()
    SwFromFileStreamDefaultEnc.Close()

    Dim SwFromFileTrue As StreamWriter = _
     New StreamWriter(FileName, True)
    SwFromFileTrue.Write(TextToAdd)
    SwFromFileTrue.Flush()
    SwFromFileTrue.Close()

    Dim SwFromFileTrueUTF8Buffer = _
     New StreamWriter(FileName, _
     True, System.Text.Encoding.UTF8, 512)
    SwFromFileTrueUTF8Buffer.Write(TextToAdd)
    SwFromFileTrueUTF8Buffer.Flush()
    SwFromFileTrueUTF8Buffer.Close()

    Dim SwFromFileTrueUTF8 = _
     New StreamWriter(FileName, True, _
     System.Text.Encoding.UTF8)
    SwFromFileTrueUTF8.Write(TextToAdd)
    SwFromFileTrueUTF8.Flush()
    SwFromFileTrueUTF8.Close()

    Dim SwFromFileStreamUTF8Buffer = _
     New StreamWriter(Fs, System.Text.Encoding.UTF8, 512)
    SwFromFileStreamUTF8Buffer.Write(textToAdd)
    SwFromFileStreamUTF8Buffer.Flush()
    SwFromFileStreamUTF8Buffer.Close()

End Sub
C#
public void CreateTextFile(string fileName, string textToAdd) 
{
    string logFile = DateTime.Now.ToShortDateString()
        .Replace(@"/",@"-").Replace(@"\",@"-") + ".log";
    
    FileStream fs = new FileStream(fileName,
        FileMode.CreateNew, FileAccess.Write, FileShare.None);
    
    StreamWriter swFromFile = new StreamWriter(logFile);
    swFromFile.Write(textToAdd);
    swFromFile.Flush();
    swFromFile.Close();

    StreamWriter swFromFileStream = new StreamWriter(fs);
    swFromFileStream.Write(textToAdd);
    swFromFileStream.Flush();
    swFromFileStream.Close();

    StreamWriter swFromFileStreamDefaultEnc = 
        new System.IO.StreamWriter(fs, 
        System.Text.Encoding.Default);
    swFromFileStreamDefaultEnc.Write(textToAdd);
    swFromFileStreamDefaultEnc.Flush();
    swFromFileStreamDefaultEnc.Close();

    StreamWriter swFromFileTrue = 
        new StreamWriter(fileName,true);
    swFromFileTrue.Write(textToAdd);
    swFromFileTrue.Flush();
    swFromFileTrue.Close();
    
    StreamWriter swFromFileTrueUTF8Buffer = 
        new StreamWriter(fileName, 
        true, System.Text.Encoding.UTF8,512);
    swFromFileTrueUTF8Buffer.Write(textToAdd);
    swFromFileTrueUTF8Buffer.Flush();
    swFromFileTrueUTF8Buffer.Close();

    StreamWriter swFromFileTrueUTF8 = 
        new StreamWriter(fileName, true,
        System.Text.Encoding.UTF8);
    swFromFileTrueUTF8.Write(textToAdd);
    swFromFileTrueUTF8.Flush();
    swFromFileTrueUTF8.Close();

    StreamWriter swFromFileStreamUTF8Buffer = 
        new StreamWriter(fs, System.Text.Encoding.UTF8, 512);
    swFromFileStreamUTF8Buffer.Write(textToAdd);
    swFromFileStreamUTF8Buffer.Flush();
    swFromFileStreamUTF8Buffer.Close();
}
C++
void CreateTextFile( String^ fileName, String^ textToAdd )
{
   String^ logFile = String::Concat( DateTime::Now.ToShortDateString()
      ->Replace( "/", "-" )->Replace( "\\", "-" ), ".log" );

   FileStream^ fs = gcnew FileStream( fileName,
      FileMode::CreateNew, FileAccess::Write, FileShare::None );

   StreamWriter^ swFromFile = gcnew StreamWriter( logFile );
   swFromFile->Write( textToAdd );
   swFromFile->Flush();
   swFromFile->Close();

   StreamWriter^ swFromFileStream = gcnew StreamWriter( fs );
   swFromFileStream->Write( textToAdd );
   swFromFileStream->Flush();
   swFromFileStream->Close();

   StreamWriter^ swFromFileStreamDefaultEnc =
      gcnew System::IO::StreamWriter( fs,
         System::Text::Encoding::Default );
   swFromFileStreamDefaultEnc->Write( textToAdd );
   swFromFileStreamDefaultEnc->Flush();
   swFromFileStreamDefaultEnc->Close();

   StreamWriter^ swFromFileTrue =
      gcnew StreamWriter( fileName,true );
   swFromFileTrue->Write( textToAdd );
   swFromFileTrue->Flush();
   swFromFileTrue->Close();

   StreamWriter^ swFromFileTrueUTF8Buffer =
      gcnew StreamWriter( fileName,
         true, System::Text::Encoding::UTF8, 512 );
   swFromFileTrueUTF8Buffer->Write( textToAdd );
   swFromFileTrueUTF8Buffer->Flush();
   swFromFileTrueUTF8Buffer->Close();

   StreamWriter^ swFromFileTrueUTF8 =
      gcnew StreamWriter( fileName, true,
         System::Text::Encoding::UTF8 );
   swFromFileTrueUTF8->Write( textToAdd );
   swFromFileTrueUTF8->Flush();
   swFromFileTrueUTF8->Close();

   StreamWriter^ swFromFileStreamUTF8Buffer =
      gcnew StreamWriter( fs, System::Text::Encoding::UTF8, 512 );
   swFromFileStreamUTF8Buffer->Write( textToAdd );
   swFromFileStreamUTF8Buffer->Flush();
   swFromFileStreamUTF8Buffer->Close();
}
J#
public void CreateTextFile(String fileName, String textToAdd)
{
    String logFile = DateTime.get_Now().ToShortDateString().
        Replace("/", "-").Replace("\\", "-") + ".log";
    FileStream fs = new FileStream(fileName, FileMode.CreateNew, 
        FileAccess.Write, FileShare.None);
    StreamWriter swFromFile = new StreamWriter(logFile);
    swFromFile.Write(textToAdd);
    swFromFile.Flush();
    swFromFile.Close();
    StreamWriter swFromFileStream = new StreamWriter(fs);
    swFromFileStream.Write(textToAdd);
    swFromFileStream.Flush();
    swFromFileStream.Close();
    StreamWriter swFromFileStreamDefaultEnc = 
        new System.IO.StreamWriter(fs,System.Text.Encoding.get_Default());
    swFromFileStreamDefaultEnc.Write(textToAdd);
    swFromFileStreamDefaultEnc.Flush();
    swFromFileStreamDefaultEnc.Close();
    StreamWriter swFromFileTrue = new StreamWriter(fileName, true);
    swFromFileTrue.Write(textToAdd);
    swFromFileTrue.Flush();
    swFromFileTrue.Close();
    StreamWriter swFromFileTrueUTF8Buffer = new StreamWriter(fileName,
        true, System.Text.Encoding.get_UTF8(), 512);
    swFromFileTrueUTF8Buffer.Write(textToAdd);
    swFromFileTrueUTF8Buffer.Flush();
    swFromFileTrueUTF8Buffer.Close();
    StreamWriter swFromFileTrueUTF8 = new StreamWriter(fileName,
        true, System.Text.Encoding.get_UTF8());
    swFromFileTrueUTF8.Write(textToAdd);
    swFromFileTrueUTF8.Flush();
    swFromFileTrueUTF8.Close();
    StreamWriter swFromFileStreamUTF8Buffer = new StreamWriter(fs,
        System.Text.Encoding.get_UTF8(), 512);
    swFromFileStreamUTF8Buffer.Write(textToAdd);
    swFromFileStreamUTF8Buffer.Flush();
    swFromFileStreamUTF8Buffer.Close();
} //CreateTextFile

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

.NET Framework

サポート対象 : 2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 2.0、1.0
コミュニティ コンテンツ   コミュニティ コンテンツとは
新しいコンテンツの追加 RSS  注釈
Processing
© 2012 Microsoft. All rights reserved. 使用条件 | 商標 | プライバシー
Page view tracker