我需要阅读包含以下内容的txt文件
123123; 192.168.1.1;
321321; 192.168.2.1;
我想将文本阅读为特定字符,例如“;”
并将其分配给变量并标记或在代码中使用它
经过长时间的搜寻...
第一路
StreamReader office_list = new StreamReader(@"c:\office_list.txt");
var x = office_list.ToString();
var y = Regex.Match(x, @"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b");
Current_Office.Text = y.Value;
但这什么都不返回..和我发现的第二种方式
string [] cur_office = Regex.Split(office_list.ToString(), ";");
foreach(string x in cur_office)
{
Current_Office.Text = x;
}
但这返回System.IO.StreamReader ...第三种方式如下
Current_Office.Text = Regex.Match(office_list.ToString(), @"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b");
错误是
错误1无法将类型'System.Text.RegularExpressions.Match'隐式转换为'string'C:\ Users \ user \ documents \ visual studio 2012 \ Projects \ WindowsFormsApplication1 \ WindowsFormsApplication1 \ Form1.cs 23 35 WindowsFormsApplication1
任何人都可以提出建议或向我指出捕获包含上面示例的1000个ips表单文本文件的最佳方法吗?
最佳答案
我认为您的第一行是错误的。
var x = office_list.ToString();
office_list是StreamReader类型吗?
尝试
var x = office_list.ReadLine();
string [] cur_office = Regex.Split(x, ";");
foreach(string x in cur_office)
{
Current_Office.Text = x;
}