c#将文本文件添加到二维数组
我试图读取一个文本文件,其中包含一个二维数组中的代理 文本文件如下所示:c#将文本文件添加到二维数组,c#,arrays,C#,Arrays,我试图读取一个文本文件,其中包含一个二维数组中的代理 文本文件如下所示: 00.00.00.00:80 00.00.00.00:80 00.00.00.00:80 00.00.00.00:80 00.00.00.00:80 如何将ip与端口分离` 因此,我的数组如下所示: 00.00.00.00:80 00.00.00.00:80 00.00.00.00:80 00.00.00.00:80 00.00.00.00:80 [00.00.00.00][80] 当前代码: public void
00.00.00.00:80
00.00.00.00:80
00.00.00.00:80
00.00.00.00:80
00.00.00.00:80
如何将ip与端口分离`
因此,我的数组如下所示:
00.00.00.00:80
00.00.00.00:80
00.00.00.00:80
00.00.00.00:80
00.00.00.00:80
[00.00.00.00][80]
当前代码:
public void readProxyList(string FileName)
{
using (StreamReader sr = new StreamReader(FileName, Encoding.Default))
{
string text = sr.ReadToEnd();
string[] lines = text.Split('\r');
foreach (string s in lines)
{
}
}
}
如果您不希望文件太大,可以使用来读取每一行。然后要拆分,只需使用“:”作为标记 例如:
var lines = File.ReadAllLines(FileName));
var array = new string[lines.Length,2];
for(int i=0; i < lines.Length; i++)
{
var temp = lines[i].Split(':');
array[i,0] = temp[0];
array[i,1] = temp[1];
}
试试这个:
public IEnumerable<string> GetProxyList(string FileName)
{
string[] allLines = File.ReadAllLines(FileName);
var result = new List<string>(allLines.Length);
foreach (string line in allLines)
{
var splittedLine = line.Split(':');
result.Add($"[{splittedLine[0]}][{splittedLine[1]}]");
}
return result;
}
public IEnumerable GetProxyList(字符串文件名)
{
string[]allLines=File.ReadAllLines(文件名);
var结果=新列表(allLines.Length);
foreach(所有行中的字符串行)
{
var splittedLine=line.Split(“:”);
添加($“[{splittedLine[0]}][{splittedLine[1]}]”);
}
返回结果;
}
OP要求的是2d数组,而不是包含现在用方括号括起来的字符串的一维列表。您可能需要一个Trim()调用来去除换行符,否?@Levon-从ReadAllLines的文档中—“生成的字符串不包含终止回车符和/或换行符”,因此我认为在这种情况下没有必要。您可以添加它以确保“安全”,或者如果行中有额外的空格,但是对于换行符,它们应该已经被删除。