【问题标题】:Useless output to console when printing result of ReadAllLines [duplicate]打印 ReadAllLines 的结果时向控制台输出无用 [重复]
【发布时间】:2017-09-22 02:27:03
【问题描述】:
 static void Main(string[] args)
    {
        string[] myStringArray = {
            "Sum Ting Wong", "Wi Tu Low", "Ho Lee Fuk", "Bang Ding Ow" };
        string path = @"c:\Users\TEMP\test.txt";
        File.WriteAllLines(path, myStringArray);
        string[] read = File.ReadAllLines(path);
        Console.WriteLine(read);
        Console.ReadKey();
    }

我的代码当前完美地打印到文件本身,但是当我运行代码时,没有任何内容被读回控制台。我已经完成了:File.ReadAllLines(path); 并且应该将其读回控制台,但我得到了以下输出:

System.String[]
有什么建议?

【问题讨论】:

  • 它不会向控制台打印任何内容?你只是扔掉读取的结果
  • @KeithNicholas 我应该做一个 Console.WriteLine() 吗?设置 File.ReadAllLines(path);到一个变量?
  • @KlappDaddy 完全正确。
  • 这个问题根本不是关于文件 IO 的。如果你把 all 的“保存到文件并读取它”去掉,你就剩下string[] myStringArray = ...; Console.WriteLine(myStringArray);,它仍然只会打印System.String[]。问题实际上只是“如何将字符串数组打印到控制台。”
  • KlappDaddy,请不要发布重复的答案 - 如果您在其他地方找到了您(或其他任何人)问题的答案,请将其标记为重复。还要确保仔细阅读minimal reproducible example 指导,因为@JonSkeet 指出该帖子与文件 I/O 完全无关,您在创建非常小的示例时可能已经想到了(您的示例实际上足够合理,因为它包含所有必要的数据内联,但花更多时间使其最小化可以直接指出答案)

标签: c#


【解决方案1】:
//Console.WriteLine(string.Join("\n", read));
read.ToList().ForEach(Console.WriteLine);

任何一行代码都支持我正在寻找的输出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 2021-08-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多