我使用该代码从txt文件中读取这样的行
25 cents
但最后一列在数据gridview中显示一个字符串
码
2017-07-01 22:12:59 0 0 0 2 2 0 0 0 0 Mads Sarag hello iam Sarag
2017-07-01 22:13:05 0 0 3 2 4 0 0 0 0 Mads Sarag hello iam Sarag
我需要有人编辑此代码来读取文件
请帮助完成
答案 0 :(得分:1)
由于您按空格和制表符分割,最后一列"列"在日志行中也将分成多个部分。因此,Columns[13]
将包含第一个单词,Columns[14]
将包含下一个单词等。
直接循环到索引13的Columns数组的末尾,并用空格连接所有部分。
示例:
string message = "";
for (int i = 13; i < Columns.Length; i++) {
message += Columns[i] + (i+1 == Columns.length ? "" : " ");
}
当然,这是假设消息永远不会是空的。如果它们可以为空,则应首先检查它。
答案 1 :(得分:1)
snixtho 的答案的另一个解决方案是使用ArraySegment
切片columns
数组,然后使用String.Join
加入项目,即
Message = Columns.Length <= 13 ? "" :
String.Join(" ", new ArraySegment<string>(Columns, 13, Columns.Length - 13));