如题
R230101N,Nest Sheet 1,1220,2440,18,18mm水曲柳,0,1,1,F,0,
R230201N,Nest Sheet 2,1219.2,2438.4,9,9mm水曲柳,0,1,1,F,0,
r23b0004,顶板(TO),457.2,421.2,18,18mm水曲柳,1,1,1,B,0
r23b0005,底板(DE),457.2,421.2,18,18mm水曲柳,1,1,1,B,0
r23b0006,前脚板(FT),90,421.2,18,18mm水曲柳,1,1,1,B,0
r23b0007,后脚板(BT),90,421.2,18,18mm水曲柳,1,1,1,B,0
像上面的字符是通过TXT文件打开的 我的想法是打开后提取指定的开头"r"(小写),结尾“,”如”r23b0004“然后继续截取,获取几个在label1中显示数字。截取后存到数据库中 ,然后再和文本框对比是否一样(文本框里的内容输入回车在对比,不需按钮控件),如一样则 label1数字减一,不一样则弹出窗口警告,直至label1为0。
string s = Regex.Match("R230101N,Nest Sheet 1,1220,2440,18,18mm水曲柳,0,1,1,F,0,", "[Rr][^\\,]+").Value;
也可以
string s = "R230101N,Nest Sheet 1,1220,2440,18,18mm水曲柳,0,1,1,F,0,";
string result = s.Split(',')[0];
建立一个List lines;
再把读取的每行按照','分割成String[] inLines,然后 lines.add(inLines);
你要求取指定的开头的段,则可以用两个foreach循环,例如
foreach(var line in lines)
{
if(line[0].StartsWith("r")) //判断
{
foreach(var text in line)
{
//取数据
}
}
}
var text = File.ReadAllLines(@"文档位置", Encoding.Default);
List<string[]> source = new List<string[]>();
foreach (var item in text)
{
source.Add(item.Split(','));
}