如何:使用File.ReadAllLines将字符串添加到字符串数组中

本文关键字:字符串 添加 数组 使用 File ReadAllLines 如何 | 更新日期: 2023-09-27 18:05:48

如何:使用File向字符串数组中添加字符串。ReadAllLines

我认为问题很清楚:我想添加一个新的字符串到现有的字符串数组,它从File.ReadAllLines获取列表内容。

public void CreateNewFolder()
{
    string[] lines = File.ReadAllLines(stringFile, Encoding.UTF8);
    lines[lines.Length + 1] = "Test";
    File.WriteAllLines(stringFile, lines, Encoding.UTF8);
}

数组的索引是"太小",但我不知道为什么。

如何:使用File.ReadAllLines将字符串添加到字符串数组中

这个错误是由于数组的长度是固定的,并且最后一个索引(你想添加新项的地方)总是在数组之外。你可以用列表代替:

public void CreateNewFolder()
{
    List<String> lines = File.ReadAllLines(stringFile, Encoding.UTF8).ToList();
    lines.Add("Test");
    File.WriteAllLines(stringFile, lines.ToArray(), Encoding.UTF8);
    //Calling the ToArray method for lines is not necessary 
} 

您会得到错误,因为您试图更改超出当前数组长度的项。您可以使用Array.Resize<T>先调整数组大小,然后更改最后一项

public void CreateNewFolder()
{
    string[] lines = File.ReadAllLines(stringFile, Encoding.UTF8);
    Array.Resize(ref lines, lines.Length + 1);
    lines[lines.Length - 1] = "Test";
    File.WriteAllLines(stringFile, lines, Encoding.UTF8);
}