我有一个具有以下信息格式的文本文件:
1 1.2323232 2.2356 4.232 1.23664
2 1.344545
3 6.2356 7.56455212
etc....
如何在 C# 中读取文件,将其解析为数组,然后对其进行一些处理?
我有一个具有以下信息格式的文本文件:
1 1.2323232 2.2356 4.232 1.23664
2 1.344545
3 6.2356 7.56455212
etc....
如何在 C# 中读取文件,将其解析为数组,然后对其进行一些处理?
使用文件助手。
例如。您所需要的只是将记录解析定义为:
[DelimitedRecord("|")]
public class Orders
{
public int OrderID;
public string CustomerID;
[FieldConverter(ConverterKind.Date, "ddMMyyyy")] public DateTime OrderDate;
public decimal Freight;
}
并按如下方式读取文件:
FileHelperEngine engine = new FileHelperEngine(typeof(Orders));
// to Read use:
Orders[] res = engine.ReadFile("TestIn.txt") as Orders[];
// to Write use:
engine.WriteFile("TestOut.txt", res);
您也可以将分隔符更改为" "
并适当地更新成员类型。
嘿,您的代码看起来在位置一有一个 ID 值。所以我创建了一些示例代码。
private List<MyValues> Read(string fileName)
{
var result = new List<MyValues>();
var line = new string[] { };
using (StreamReader sr = new StreamReader(fileName))
{
while (sr.Peek() > -1)
{
line = sr.ReadLine().Trim().Split(' ');
var val = new MyValues();
val.Id = Convert.ToInt32(line.ElementAt(0));
for (int n = 1; n < line.Count(); n++)
{
val.Values.Add(Convert.ToDouble(line[n]));
}
result.Add(val);
}
}
return result;
}
class MyValues
{
public int Id = 0;
public List<double> Values = new List<double>();
}