将一个流输出到多个流中
/// <summary>
/// MultiTextWriter 的摘要说明。
/// 通过重写Write和WriteLine实现同时向多个流写入数据。
///
/// </summary>
public class MultiTextWriter : System.IO.TextWriter
{
public System.IO.TextWriter[] m_Writers;
public MultiTextWriter( System.IO.TextWriter[] writers )
{
m_Writers = writers;
}
public override void Write( string value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( object value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( ulong value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( long value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( uint value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( int value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( float value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( decimal value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( double value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( char[] buffer , int index , int count )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( buffer , index , count );
writer.Flush();
}
}
public override void Write( char[] buffer )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( buffer );
writer.Flush();
}
}
public override void Write( char value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( bool value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( value );
writer.Flush();
}
}
public override void Write( string format , params object[] arg )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( format , arg );
writer.Flush();
}
}
public override void Write( string format , object arg0 , object arg1 , object arg2 )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( format , arg0 , arg1 , arg2 );
writer.Flush();
}
}
public override void Write( string format , object arg0 , object arg1 )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( format , arg0 , arg1 );
writer.Flush();
}
}
public override void Write( string format , object arg0 )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Write( format , arg0 );
writer.Flush();
}
}
public override void WriteLine( )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( );
writer.Flush();
}
}
public override void WriteLine( string value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( object value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( ulong value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( long value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( uint value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( int value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( float value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( decimal value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( double value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( char[] buffer , int index , int count )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( buffer , index , count );
writer.Flush();
}
}
public override void WriteLine( char[] buffer )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( buffer );
writer.Flush();
}
}
public override void WriteLine( char value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( bool value )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( value );
writer.Flush();
}
}
public override void WriteLine( string format , params object[] arg )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( format , arg );
writer.Flush();
}
}
public override void WriteLine( string format , object arg0 , object arg1 , object arg2 )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( format , arg0 , arg1 , arg2 );
writer.Flush();
}
}
public override void WriteLine( string format , object arg0 , object arg1 )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( format , arg0 , arg1 );
writer.Flush();
}
}
public override void WriteLine( string format , object arg0 )
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.WriteLine( format , arg0 );
writer.Flush();
}
}
public override void Close()
{
foreach( System.IO.TextWriter writer in m_Writers )
{
writer.Flush();
writer.Close ();
}
}
public override System.Text.Encoding Encoding
{
get{ return System.Text.Encoding.Unicode; }
}
}
浙公网安备 33010602011771号