我需要列出我的系列,所以我编写了一个小工具,将某个文件夹中的系列名称保存到xml文件中。 我曾经有一个txt-File但随着时间的推移变得混乱。
此工具会在特定时间点更新txt文件中的系列列表。 目前我使用此代码:
List<string> seriesList = File.ReadAllLines(@"C:\path\series.txt").ToList();
bool contains = seriesList.Contains(series, StringComparer.OrdinalIgnoreCase);
if (contains)
{
return;
}
else
{
addToList()
}
我的txt中的系列名称保存如下:
氪。
NCIS.Los.Angeles。
等
在我的xml文件中,系列名称列出如下:
<?xml version="1.0" encoding="utf-8"?>
<collection>
<series>Krypton.</series>
<series>NCIS.Los.Angeles.</series>
</collection>
现在我需要类似我的“包含”功能,如上所述。 如果没有for循环,这将会很好。
编辑:(完成)
XDocument xDocSload = XDocument.Load(Directory.GetCurrentDirectory() + @"\settings\series.xml");
var sList = xDocSload.Root.Elements("seriesName").Select(element => element.Value).ToList();
List<string> seriesList = sList;
bool contains = seriesList.Contains(series, StringComparer.OrdinalIgnoreCase);
if (contains)
{
...
答案 0 :(得分:0)
线条是字符串。你想看看是否有任何字符串包含一个子字符串 - 所以只需使用LINQ的Any。
(也摆脱了回报,使代码更难阅读)
var isThere = seriesList.Any(s => s.Contains(series, ));
if(!isThere)
{
addToList();
}