我正在将输出写入此文件,但它在Organized.txt中显示为空.如果我从sr2.WriteLine更改最后一个foreach循环并且只用WriteLine写入控制台,那么输出会在控制台上正确显示,那么为什么它在文本文件中没有正确显示?
class Program
{
public static void Main()
{
string[] arr1 = new string[200];
System.IO.StreamWriter sr2 = new System.IO.StreamWriter("OrganizedVersion.txt");
// Dictionary, key is number from the list and the associated value is the number of times the key is found
Dictionary<string, int> occurrences = new Dictionary<string, int>();
// Loop test data
foreach (string value in File.ReadLines("newWorkSheet.txt"))
{
if (occurrences.ContainsKey(value)) // Check if we have found this key before
{
// Key exists. Add number of occurrences for this key by one
occurrences[value]++;
}
else
{
// This is a new key so add it. Number 1 indicates that this key has been found one time
occurrences.Add(value, 1);
}
}
// Dump result
foreach (string key in occurrences.Keys)
{
sr2.WriteLine(key.ToString() + occurrences[key].ToString());
}
Console.ReadLine();
}
}
Run Code Online (Sandbox Code Playgroud)
您可以将代码包装在a中using以确保流已关闭.
using(StreamWriter sr2 = new StreamWriter("OrganizedVersion.txt"))
{
....
}
Run Code Online (Sandbox Code Playgroud)
或者你可以flush或close写完后.
sr2.close();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1371 次 |
| 最近记录: |