簡體   English   中英

將Console.Writeline()語句的最終輸出復制到文本文件和數組c#

[英]copy final output of Console.Writeline() statements to a text file and array c#

我正在使用VS2013而且我是編程新手。 在我的程序中,我有如下的Console.Writeline語句。 頻率是一個雙變量,可實時輸出頻率峰值。

 if (Frequency > 328 && Frequency < 330)
 {                               
     Console.WriteLine(Frequency.ToString());
 }
 if (Frequency > 245 && Frequency < 247)
 {
     Console.WriteLine(Frequency.ToString());
 }
 if (Frequency > 195 && Frequency < 197)
 {
     Console.WriteLine(Frequency.ToString());
 }

一旦我運行程序,它就像這樣輸出。

196.5654296875
246.9658203125
196.3984375
246.0322265625
196.5654296875
246.798828125
246.46484375
329.0322265625
329.0322265625
329.265625

我想將上面的整個最終輸出數字復制到文本文件和數組。 但我不知道該怎么做。 請幫我。

您可以將它存儲到List<string>並將其打印到文件中

 List<string> freq = new List<string>();

 if (Frequency > 328 && Frequency < 330)
 {                               
     Console.WriteLine(Frequency.ToString());
     freq.Add(Frequency.ToString());
 }

System.IO.File.WriteAllLines(@"D:\test\frequency_output.txt", freq.ToArray());

我想說最簡單的方法就是實例化一個可寫入文件的編寫器,然后將其類似於控制台的WriteLine()方法調用,如下:

using (StreamWriter outfile = new StreamWriter("C:\numbers.txt"))
{
    if (Frequency > 328 && Frequency < 330)
    {                               
     Console.WriteLine(Frequency.ToString());
     outfile.WriteLine(Frequency.ToString());
    }
    if (Frequency > 245 && Frequency < 247)
    {
     Console.WriteLine(Frequency.ToString());
     outfile.WriteLine(Frequency.ToString());
    }
    if (Frequency > 195 && Frequency < 197)
    {
     Console.WriteLine(Frequency.ToString());
     outfile.WriteLine(Frequency.ToString());
    }   
}

您可以在此處找到有關StreamWriter的更多信息: https//msdn.microsoft.com/pl-pl/library/System.IO.StreamWriter%28v=vs.110%29.aspx

當然這不是很有效,但是你應該開始吧。

在C#中使用文件有很多材料,所以你也不應該在那里找到幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM