我的要求是我需要拆分一个文本文件并存储到一个数据表中。请参阅以下代码和列分隔符“|” 和行分隔符“^”:
var text = streamReader.ReadToEnd();
var lines = text.Split('^');
var rows = lines.Select(l => new {Line = l, Fields = l.Split('|')});
var colCount = rows.Max(r => r.Fields.Length);
var tblRegistration = new DataTable();
for (int i = 1; i <= colCount; i++)
{
tblRegistration.Columns.Add("Column" + i, typeof (string));
}
如果格式正确,它将正常工作。
但最终用户可能会上传文本文件,如
adfafdsafsdfsdfs^fsdf|sfsdf|sdfsfd|dfs...
第一行只有一列,但应该有四列。在这种情况下如何验证呢?