【问题标题】:Saving lists to txt file将列表保存到 txt 文件
【发布时间】:2013-03-08 18:13:16
【问题描述】:

我正在尝试将列表保存到文本文件中。

这是我的代码:

public void button13_Click(object sender, EventArgs e)
{
    TextWriter tw = new StreamWriter("SavedLists.txt");

    tw.WriteLine(Lists.verbList);
    tw.Close();
}

这是我在文本文件中得到的:

System.Collections.Generic.List`1[System.String]

我必须使用ConvertAll<>吗?如果是这样,我不确定如何使用它。

【问题讨论】:

  • 你在代码的什么地方定义List.verbList..?
  • 显然 OP 对 Stack Overflow 来说是新的。让他休息一下。无需投票,只需留下有用的 cmets。
  • 你可以做这样的事情也很简单Lists.verbList.ForEach(delegate(string strListContents) { tw.WriteLine(strListContents); });

标签: c# list


【解决方案1】:

框架4:无需使用StreamWriter:

System.IO.File.WriteAllLines("SavedLists.txt", Lists.verbList);

【讨论】:

    【解决方案2】:

    假设您的通用列表是字符串类型:

    TextWriter tw = new StreamWriter("SavedList.txt");
    
    foreach (String s in Lists.verbList)
       tw.WriteLine(s);
    
    tw.Close();
    

    或者,使用 using 关键字:

    using(TextWriter tw = new StreamWriter("SavedList.txt"))
    {
       foreach (String s in Lists.verbList)
          tw.WriteLine(s);
    }
    

    【讨论】:

    • Bhushan 否定的 1 票在这里不合适如果 OP 不想使用 Using 怎么办? +3 这是一个很好的答案
    • @BhushanFirake 这是一个糟糕的推理。 1) 修正后的样本符合提问者的风格。 2) 对象正确关闭。你可能不喜欢这种风格,但它完全有效。
    • 谢谢!我正在上暑期代码学校,这对我的作业很有帮助!
    【解决方案3】:

    @Jon 的回答很棒,可以带你去你需要去的地方。那么为什么你的代码会打印出它是什么。答案:通过隐式调用 Lists.verbList.ToString(),您不是在写出列表的内容,而是 您的列表本身 的字符串表示形式。 Object.ToString() 定义了您在此处看到的默认行为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多