我正在尝试使用filehelpers类生成器,但我对如何处理它有点困惑。
var cb = new DelimitedClassBuilder("temp", ",") { IgnoreFirstLines = 0, IgnoreEmptyLines = true, Delimiter = "," };
var sr = new StreamReader(stream);
var headerArray = sr.ReadLine().Split(',');
foreach (var header in headerArray)
{
var fieldName = header.Replace("\"", "").Replace(" ", "");
cb.AddField(fieldName, typeof(string));
}
var engine = new FileHelperEngine(cb.CreateRecordClass());
var result = engine.ReadStream(sr);
DelimitedClassBuilder的第一个参数是“className”,然后是“delimiter”
//
// Summary:
// Creates a new DelimitedClassBuilder.
//
// Parameters:
// className:
// The valid class name.
//
// delimiter:
// The delimiter for that class.
public DelimitedClassBuilder(string className, string delimiter);
然后,我浏览流的第一行,其中包含我稍后将用作此“类”的字段名称的标题。
最后一行读取所有其余信息并将其作为对象数组 [] 返回。我在里面看到它们属于“临时”类。
但是我不知道如何将其实际转换为“temp”类。现在我真的不知道如何获取数据。我知道我不能只做类似的事情
result[0].SomeFieldName 作为 fieldName 可能会随着运行而变化。所以这也让我想知道,如果我必须做一些事情,比如通过索引或其他东西获取它,为什么它首先会创建一个类。
如您所见,我现在很困惑。