2012-05-09 15 views
0

これは初心者の質問ですが、私はC#を自分で教え始めたばかりですが、私はWMIを使いこなし始めました。 WMIジェネレータは、どのように動作するかを分析するためのものです。しかし、テキストファイルにデータを書き込む方法はありますか?C#アプリケーションのテキスト出力をテキストファイルに書き込む方法

コード:

using System; 

    using System.Management; 

    using System.Windows.Forms; 

    namespace WMISample 
    { 
     public class MyWMIQuery 
     { 

      public static void Main() 
      { 
       try 
       { 
        ManagementObjectSearcher searcher = 
        new ManagementObjectSearcher("root\\CIMV2", 
        "SELECT * FROM Win32_BIOS"); 

       foreach (ManagementObject queryObj in searcher.Get()) 
       { 
        Console.WriteLine("-----------------------------------"); 
        Console.WriteLine("Win32_BIOS instance"); 
        Console.WriteLine("-----------------------------------"); 
        Console.WriteLine("SerialNumber: {0}", queryObj["SerialNumber"]); 
       } 
      } 
      catch (ManagementException e) 
      { 
       MessageBox.Show("An error occurred while querying for WMI data: " + e.Message); 
      } 
     } 
    } 
} 
+0

コマンドラインからリダイレクトできませんでしたか? 'program.exe> test.txt'? –

答えて

0

ファイルにしてから書き込むためのステートメントを使用して、特定のがありますが、ここでは(入出力用)そのsystem.IOが正常にすべての基本の使い方を説明するチュートリアルへのリンクですIO http://www.csharp-station.com/HowTo/ReadWriteTextFile.aspx

3

あなただけのファイルにテキストを追加したい場合は:あなたは、特にパイプにコンソルを希望される場合

File.AppendAllText("c:\file.txt", "some text"); 

テキストファイルへの電子、あなたはここで説明するように、FileStreamをするコンソールの標準出力をリダイレクトする必要があります。

から:http://msdn.microsoft.com/en-us/library/system.console.setout(v=vs.71).aspx

Console.WriteLine("Hello World"); 
FileStream fs1 = new FileStream("Test.txt", FileMode.Create); 
// First, save the standard output. 
TextWriter tmp = Console.Out; 

StreamWriter sw1 = new StreamWriter(fs1); 
Console.SetOut(sw1); 
Console.WriteLine("Hello file"); 

Console.SetOut(tmp); 
Console.WriteLine("Hello World"); 

sw1.Close(); 
0

これは、ロギングの目的である場合には、トレースとAを使用することができますTextWriterTraceListenerを使ってファイルに書き出すことができます。

関連する問題