次の方法で共有


Trace.Flush メソッド

出力バッファをフラッシュし、バッファ内のデータを Listeners に書き込みます。

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

構文

'宣言
<ConditionalAttribute("TRACE")> _
Public Shared Sub Flush
'使用

Trace.Flush
[ConditionalAttribute("TRACE")] 
public static void Flush ()
[ConditionalAttribute(L"TRACE")] 
public:
static void Flush ()
/** @attribute ConditionalAttribute("TRACE") */ 
public static void Flush ()
ConditionalAttribute("TRACE") 
public static function Flush ()

解説

ストリームをフラッシュしても、Flush または Close を明示的に呼び出さない限り、そのストリームの基になるエンコーダはフラッシュされません。AutoFlushtrue に設定すると、データがバッファからストリームにフラッシュされますが、エンコーダの状態はフラッシュされません。これにより、エンコーダの状態 (一部の文字) を維持できるため、次のブロックの文字を正確にエンコードできるようになります。この動作は、一部の文字をエンコードするためにはエンコーダがあらかじめその文字に隣接する文字を受け取っておく必要がある UTF8 および UTF7 に対して有効です。

使用例

myTextListener という名前の TextWriterTraceListener を作成する例を次に示します。myTextListener は、myOutputWriter という名前の StreamWriter を使用して、TestFile.txt というファイルに書き込みます。この例では、ファイル、ストリーム、およびテキスト ライタを作成し、テキストの 1 行をファイルに書き込んでから、出力をフラッシュして終了します。

' Specify /d:TRACE=True when compiling.

Imports System
Imports System.IO
Imports System.Diagnostics

Class Test
    
    Shared Sub Main()
    
        ' Create a file for output named TestFile.txt.
        Using myFileStream As New FileStream("TestFile.txt", FileMode.Append)
        
            ' Create a new text writer using the output stream
            ' and add it to the trace listeners. 
            Dim myTextListener As New TextWriterTraceListener(myFileStream)
            Trace.Listeners.Add(myTextListener)
            
            ' Write output to the file.
            Trace.WriteLine("Test output")
            
            ' Flush and close the output stream.
            Trace.Flush()
            Trace.Close()
        
        End Using
        
    End Sub 'Main

End Class
// Specify /d:TRACE when compiling.

using System;
using System.IO;
using System.Diagnostics;

class Test
{
    static void Main()
    {
        // Create a file for output named TestFile.txt.
        using (FileStream myFileStream = 
            new FileStream("TestFile.txt", FileMode.Append))
        {
            // Create a new text writer using the output stream 
            // and add it to the trace listeners.
            TextWriterTraceListener myTextListener = 
                new TextWriterTraceListener(myFileStream);
            Trace.Listeners.Add(myTextListener);
          
            // Write output to the file.
            Trace.WriteLine("Test output");
         
            // Flush and close the output stream.
            Trace.Flush();
            Trace.Close();
        }
    }
}
// Specify /DTRACE when compiling.

#using <System.dll>
using namespace System;
using namespace System::IO;
using namespace System::Diagnostics;

void main()
{
     #if defined(TRACE)
    // Create a file for output named TestFile.txt.
    FileStream^ myFileStream = 
        gcnew FileStream( "TestFile.txt", FileMode::Append );
   
    // Create a new text writer using the output stream 
    // and add it to the trace listeners.
    TextWriterTraceListener^ myTextListener = 
        gcnew TextWriterTraceListener( myFileStream );
    Trace::Listeners->Add( myTextListener );
   
    // Write output to the file.
    Trace::WriteLine( "Test output" );
   
    // Flush and close the output stream.
    Trace::Flush();
    Trace::Close();
    #endif
}
// Specify /d:TRACE when compiling.

import System.*;
import System.IO.*;
import System.Diagnostics.*;

class Test
{
    public static void main()
    {
        // Create a file for output named TestFile.txt.
        FileStream myFileStream = 
            new FileStream("TestFile.txt", FileMode.Append);
            
        // Create a new text writer using the output stream 
        // and add it to the trace listeners.
        TextWriterTraceListener myTextListener = 
            new TextWriterTraceListener(myFileStream);
        Trace.get_Listeners().Add(myTextListener);
      
        // Write output to the file.
        Trace.WriteLine("Test output");
     
        // Flush and close the output stream.
        Trace.Flush();
        Trace.Close();
    }
}
// Specify /d:TRACE when compiling.

import System
import System.Diagnostics
import System.IO

@if(@TRACE)
// Create a file for output named TestFile.txt.
var myFileStream : FileStream = 
   new FileStream("TestFile.txt", FileMode.Append)

// Create a new text writer using the output stream 
// and add it to the trace listeners. 
var myTextListener : TextWriterTraceListener = 
   new TextWriterTraceListener(myFileStream);
Trace.Listeners.Add(myTextListener)

// Write output to the file.
Trace.WriteLine("Test output")

// Flush and close the output stream.
Trace.Flush()
Trace.Close()
@end

プラットフォーム

Windows 98, Windows 2000 SP4, Windows Millennium Edition, 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

参照

関連項目

Trace クラス
Trace メンバ
System.Diagnostics 名前空間
Debug クラス
Trace クラス
BooleanSwitch クラス
TraceSwitch
TraceListener
DefaultTraceListener クラス
ConditionalAttribute クラス