private void ReadKeysValues()
{
if (File.Exists(@"c:TempWritePostedAlready.txt"))
{
alreadyPost.UnionWith(File.ReadAllLines(@"c:TempWritePostedAlready.txt"));
for (int i = 0; i < alreadyPost.Count; i++)
{
alreadyPost.Remove("");
alreadyPost.Remove("t");
}
}
}
变量已经发布是哈希集我可以通过删除(")从中删除空行;但是我无法删除开头以 \t 开头的行/索引。执行删除("\t");或 (@"\t");不工作。
可以使用 RemoveWhere 方法。
alreadyPost.RemoveWhere(p => p.StartsWith("t"));
更新:
要仅从每个项目中删除t
字符,但保留项目(请参阅注释),您可以执行以下操作:
alreadyPost = new HashSet(
alreadyPost.Select(p => p.StartsWith("t") ? p.Substring(1) : p)
);
我通常会阻止将此类项目添加到集合中,而不是在之后删除它们。但是,如果您确实需要,则可以使用以下代码:
foreach (var item in alreadyPost.ToList())
{
if (item.StartsWith("t"))
{
alreadyPost.Remove(item);
}
}