0

我需要将我List<Cupon>的保存到文本文件中。我正在使用这段代码:

File.WriteAllText(@"C:\Users\urim.sadiku\Desktop\Loja.txt", Cupo.ToString());
List<string> myList = new List<string>(Cupo.ToString().Split(','));

但 txtFile 中的输出是:

System.Collections.Generic.List`1[LojeShperblyese2.Coupon]

注意:我需要用 保存Split(),但我不知道该怎么做。

我需要做什么才能正确保存我的列表?

4

3 回答 3

1

ToStringonList不会连接列表的所有元素并返回它,你需要一个自定义实现(或者可能有一个现有的类型确实像这样,但不是List)。

请注意您正在调用的方法的名称,尤其是Text部分。

要纠正您的具体情况,您需要定义一个string变量,并在构建输出时循环列表的所有元素以写入 ( youstring += item),然后使用File.WriteAllText(yourstring)- 或此方法的某些变体,毫无疑问,您可以询问任何人所以对于“在一行中完成它?!”的方法。

但是,您可以使用File.WriteAllLines,它会为您做同样的事情,但会为您处理每个元素的迭代。

于 2013-02-05T10:09:19.790 回答
0

默认情况下,ToString方法返回类型名称,如果它没有在子类中被覆盖。

尝试使用

File.WriteAllText(@"C:\Users\urim.sadiku\Desktop\Loja.txt",
                 string.Join(",", Cupo));

这假设您已经在您的类上正确地实现ToString了方法LojeShperblyese2.Coupon

于 2013-02-05T10:11:16.167 回答
0

I should add that you should override ToString() Method of class Coupon to return your desired string that you want to be written to file, then Ilya Ivanov's answer will work.

于 2013-02-05T10:58:16.653 回答