如何将 ArrayList 写入文本文件

本文关键字:文本 文件 ArrayList | 更新日期: 2023-09-27 18:36:21

我有一个字符串的ArrayList和一个名为actor的文本文件。我需要将 ArrayList 中的所有元素写入.txt文件。这是我到目前为止的代码。

void WriteArrayList()
    {                        
        foreach (object actor in ActorArrayList)
        {
            File.WriteAllLines("C:''actors.txt", actor); 
        }
    }

如何将 ArrayList 写入文本文件

如果确实必须使用 ArrayList ,并且假设您使用的是 .NET 3.5 或更高版本,则可以使用 LINQ Cast 方法将其转换为字符串序列:

// .NET 4 and higher
File.WriteAllLines(@"c:'actors.txt", ActorArrayList.Cast<string>());

对于 .NET 3.5,还需要将其转换为数组:

File.WriteAllLines(@"c:'actors.txt", ActorArrayList.Cast<string>().ToArray());

File.WriteAllLines重载占用IEnumerable<string>仅在 .NET 4 中引入。

请注意,您不需要自己循环访问列表 - File.WriteAllLines的重点是它为您完成此操作。

如果您甚至没有使用 .NET 3.5,则应自行循环 - foreach 循环可以为你隐式强制转换:

using (TextWriter writer = File.CreateText(@"c:'actors.txt"))
{
    foreach (string actor in ActorArrayList)
    {
        writer.WriteLine(actor);
    }
}

如果你可以使用List<string>而不是ArrayList,你应该这样做。泛型集合是在 .NET 2 中引入的,从那时起,几乎没有理由使用非泛型集合。