除了某些元素之外,删除数组中的所有元素

时间:2017-05-01 09:37:03

标签: c# arrays list

所以我有一个数组(string []),我有一个数组,其中包含我希望保留的行数,是否有一种特定的方法可以删除所有这些,或者将它们复制到空数组中?

这是行号

的数组
            for (int i = 0; i < dumpFile.Length; i++)
            {
                if (dumpFile[i].StartsWith(@"     ""videoId"":"))
                {
                    arrayIndex.Add(i);
                    string stringI = i.ToString() + "\r\n";
                    System.IO.File.AppendAllText("lines.txt", stringI);                       
                }
            }

1 个答案:

答案 0 :(得分:3)

使用Linq:

要仅保留数组中的某些元素,您可以使用以下代码。您可以根据line.StartsWith()指定您的条件。您也可以将这些保存到文件中,就像使用单个语句而不是循环一样。

string[] selected = dumpFile.Where(line => line.StartsWith(@"     ""videoId"":")).ToArray();

// Now saving these lines to a file in a single line instead of using a loop
System.IO.File.AppendAllLines("lines.txt", selected);