[英]remove blank values from array and suggest a better method to read text file data delimited by '|'
我試圖從文本文件中獲取值,其中使用“ | ”分隔條目 '.am使用字符串.Split方法獲取值。但在某些地方,分隔符連續出現多次,如' ||||||||| ',所以在數組中插入空格我應該如何從數組中刪除那些空元素,或者是否有任何有效的技術從“|”分隔的文本文件中讀取值。下面是我的代碼和數組值的屏幕截圖
var reader = new StreamReader(File.OpenRead(@"d:\er.txt"));
while (!reader.EndOfStream)
{
var line = reader.ReadLine().Trim();
var values = line.Split('|');
string[] ee = values;
}
任何人都可以建議一個更好的方法來讀取由'|'分隔的文本文件中的數據
Split
有一個帶有StringSplitOptions
枚舉值的重載:
var values = line.Split(new char[]{'|'}, StringSplitOptions.RemoveEmptyEntries);
這將刪除空條目。
你可以在陣列上使用linq嗎?
var values = line.Split("|").Where(v => !string.IsNullOrEmpty(v));
看,下面的代碼行,你可以做類似的事情。
var values = line.Split('|');
List<string> FilteredValues = new List<string>();
foreach (var value in values)
{
if (value != "")
{
FilteredValues.Add(value);
}
}
進一步向Oded的回答這是正確的語法
var reader = new StreamReader(File.OpenRead(@"d:\er.txt"));
while (!reader.EndOfStream)
{
var line = reader.ReadLine().Trim();
var values = line.Split(new char[]{'|'}, StringSplitOptions.RemoveEmptyEntries);
string[] ee = values;
}
或者,也許你可以使用trim()函數!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.