C# 如何拆分服务器地址并存储在列表中
我有一个大约有10个字符串的C# 如何拆分服务器地址并存储在列表中,c#,arrays,list,split,C#,Arrays,List,Split,我有一个大约有10个字符串的列表。 数值如下: \\Server\Site\MySite\File1.xml \\Server\Site\MySite\File2.xml \\Server\Site\MySite\File2.xml ....................... \\Server\Site\MySite\File10.xml 我需要将\MySIte\File1.xml提取到\MySIte\File10.xml并存储在另一个列表中 我尝试使用Split关键字,并使用另一个列表填
列表。
数值如下:
\\Server\Site\MySite\File1.xml
\\Server\Site\MySite\File2.xml
\\Server\Site\MySite\File2.xml
.......................
\\Server\Site\MySite\File10.xml
我需要将\MySIte\File1.xml
提取到\MySIte\File10.xml
并存储在另一个列表中
我尝试使用Split
关键字,并使用另一个列表填充拆分的字符串。但它似乎没有给出正确的答案
代码如下:
for(int index=0;index<list.Count;list++)
{
string[] myArray=list[index].Split('\\');
for(int innerIndex=0;innerIndex<myArray.Length;innerIndex++)
{
anotherList[innerIndex]=myArray[2]+"\\"+myArray[3];
}
}
for(int index=0;index如果您知道所有字符串的输入,就不需要太努力
str.Substring(str.IndexOf("\\MySite"))
一个词:林克
var results = (from x in source
let parts = x.Split('\\')
select String.Join("\\", parts.Skip(1)).ToArray();
您可以使用以下代码
List<string> source = new List<string>();
source.Add(@"\\Server\Site\MySite\File1.xml");
source.Add(@"\\Server\Site\MySite\File2.xml");
source.Add(@"\\Server\Site\MySite\File2.xml");
source.Add(@"\\Server\Site\MySite\File10.xml");
foreach(string s in source)
{
string[] parts = s.Split(new string[]{ Path.DirectorySeparatorChar.ToString() },StringSplitOptions.RemoveEmptyEntries);
Console.WriteLine(parts[parts.Length - 1] + Path.DirectorySeparatorChar +
parts[parts.Length - 2]);
}
List source=new List();
source.Add(@“\\Server\Site\MySite\File1.xml”);
source.Add(@“\\Server\Site\MySite\File2.xml”);
source.Add(@“\\Server\Site\MySite\File2.xml”);
source.Add(@“\\Server\Site\MySite\File10.xml”);
foreach(源中的字符串s)
{
string[]parts=s.Split(新字符串[]{Path.directorysepartorchar.ToString()},StringSplitOptions.RemoveEmptyEntries);
Console.WriteLine(parts[parts.Length-1]+Path.directoryseportorchar+
零件[零件长度-2];
}
我只需删除\MySite
之前的任何内容,然后获取其余内容:
使用的测试数据:
List<string> source = new List<string>
{
@"\\Server\Site\MySite\File1.xml",
@"\\Server\Site\MySite\File2.xml",
@"\\Server\Site\MySite\File2.xml",
@"\\Server\Site\MySite\File10.xml",
};
让我试试您的solutionList=results.ToList();如果我尝试将LINQ查询的结果绑定到列表,则会出现错误。请帮助您的LINQ查询无法工作。它会再次提供原始列表。还有其他建议吗?让我试试您的解决方案
var result =
source
// Start removing at 0 and remove everything before '\MySite'
.Select(x => x.Remove(0, x.IndexOf("\\MySite")))
.ToList();