【问题标题】:VS do not write to the output fileVS 不写入输出文件
【发布时间】:2018-12-05 15:38:17
【问题描述】:

Visual Studio 不写入输出文件。 代码有效,结果显示在控制台上,但不在文件上。 试图更改文件目标和目录但没有结果。

这是我的代码:

string[] files = Directory.GetFiles("C:\\Users\\a.petkov\\Downloads\\FILES\\",
    "*.*", SearchOption.TopDirectoryOnly);

foreach (string file in files)
{
    Console.WriteLine(file);
}
Console.WriteLine();

Dictionary<string, Dictionary<string, decimal>> dict = new Dictionary<string, Dictionary<string, decimal>>();

foreach (string file in files)
{
    //decimal length = (new System.IO.FileInfo(file).Length) / 1024;
    decimal filesize = Decimal.Divide(file.Length, 1024);

    string extension = Path.GetExtension(file);
    string name = Path.GetFileName(file);

    if (dict.ContainsKey(extension))
    {
        dict[extension].Add(name, filesize);
    }
    else
    {
        dict.Add(extension, new Dictionary<string, decimal>() { { name, filesize } });
    }
}
string wayToFile = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\report.txt";


    using (StreamWriter writer = new StreamWriter(wayToFile))
    {
        foreach (var item in dict.OrderByDescending(v => v.Value.Count).ThenBy(k => k.Key))
        {
            Console.WriteLine('.' + item.Key);
            foreach (var kvp in item.Value)
            {
                Console.WriteLine($"--{kvp.Key} - {kvp.Value}kb");
            }
        }
    }

【问题讨论】:

标签: c# file output


【解决方案1】:

第 36 和 39 行

Console.WriteLine('.' + item.Key);
Console.WriteLine($"--{kvp.Key} - {kvp.Value}kb");

应该是

writer.WriteLine('.' + item.Key);
writer.WriteLine($"--{kvp.Key} - {kvp.Value}kb");

【讨论】:

    猜你喜欢
    • 2023-04-09
    • 1970-01-01
    • 2014-10-18
    • 1970-01-01
    • 2016-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多