[英]String Split ASP.NET /C#
I am processing CSV File 我正在处理CSV文件
Say 说
ABC|06|001
PPP|06|001
I am running LINQ to split the CSV 我正在运行LINQ来拆分CSV
var path = Server.MapPath("~/App_Data/CSV.txt");
var _collectCSGData = from line in File.ReadAllLines(path)
let parts = line.Split('|')
select new { ID = parts[0],Assignment=parts[1]};
How to get the last item of each line ? 如何获得每行的最后一项?
(ie) (即)
001
001
from line in File.ReadAllLines(path)
select line.Split('|').LastOrDefault()
Something like: 就像是:
parts[parts.length -1]
should do the trick. 应该做的伎俩。
var _collectCSGData = from line in File.ReadAllLines(path)
let parts = line.Split('|')
let assignment = parts[parts.length - 1]
select assignment;
This should work, if you need to massage data, let
is your friend. 这应该工作,如果你需要按摩数据, let
你的朋友。
UPDATE: 更新:
Since parts may be empty you can have: 由于零件可能是空的,您可以:
let assignment = parts.length > 0 ? parts[parts.length - 1] : String.Empty
If you know it's the third part, how about adding to your anonymous constructor: 如果您知道这是第三部分,那么如何添加到您的匿名构造函数:
var _collectCSGData = from line in File.ReadAllLines(path)
let parts = line.Split('|');
select new
{ID = parts[0], Assignment = parts[1], Data = parts[2]};
Or, if it's just "The last Item no matter how many items" 或者,如果它只是“最后一项无论多少项”
var _collectCSGData = from line in File.ReadAllLines(path)
let parts = line.Split('|');
select new
{ID = parts[0], Assignment = parts[1], Data = parts[part.length-1]};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.