2015-06-27 93 views
1

我正在使用VS2013,并且我是编程新手。在我的程序中,我有如下的Console.Writeline声明。频率是实时输出频率峰值的双变量。将Console.Writeline()语句的最终输出复制到文本文件和数组c中#

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 

我想复制上面的整个最终输出数字到一个文本文件和数组也。但我不知道如何做到这一点。请帮帮我。

+0

你想要一些代码写出你的代码中的文本文件?很高兴给一些 – Drew

+0

_System.IO.File.AppendAllText(“C:\\ dir1 \\ file1.txt”,ToString())_。要将文本存储在数组中,请使用_List 频率=新列表()_并存储freqs:_frequencies.Add(频率)_ – Graffito

+0

用于答复我的Graffito和Drew。 graffito这正是我想要的,非常感谢:) – chade

回答

4

您可以将其存储到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()); 
0

我会说这样做最简单的方法,将实例可以写入文件作家,然后调用它的WriteLine()方法similarlilly安慰之一,这样的:

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#中使用文件有很多材料,所以你也不应该在寻找帮助时遇到问题。

相关问题