在文本文档中,有很多条类似的数据:2020-09-25 数据:2020-09-25 /199/20/15
他们的长度都是一样的,我需要的是获取每一行里的”数据:“后面的时间和第一个/后面的数据,该怎么获取?
按照行的格式从文本读取,然后用正则式筛选.
大概这样,主要使用Split拆分
var lines = File.ReadAllLines(文件路径);
foreach(var line in lines)
{
string []items= line.Split(':'); //按特定字符拆分
string strDate= items[1]; //日期及后面的数据
string []dateItems = strDate.Split(' '); //按空格拆分
string date= dateItems[0];
string detail = dateItems[1];
}
string[] result = System.IO.File.ReadAllLines(文件名, System.Text.Encoding.UTF8).Select(x => x.Split(new string[] {"数据:"}, StringSplitOptions.None)[1]).ToArray(); //如果不是utf8,换别的,比如gbk等
如果文件不大,楼上几个都能处理.
如果文件很大,比如超过了机器内存,那就要使用流式处理,每次读一行,然后处理一行.