filehelper在读取记录之前更改RecordLine
本文关键字:RecordLine 读取 记录 filehelper | 更新日期: 2023-09-27 18:16:53
我正在使用FileHelpers库读取一个巨大的文件。我想在阅读下面的记录之前更改RecordLine。
static void engine_BeforeReadRecord(object sender, BeforeReadRecordEventArgs<object> e)
{
if (e.RecordLine.Contains(@"'|"))
e.RecordLine.Replace(@"'|", "");
}
他们的在线帮助也说可以修改
<>之前注意:如果您更改RecordLine,引擎将使用更改后的值这在某些情况下是有用的,但你必须小心之前但它不起作用。我的做法是否有什么问题?
假设RecordLine是一个字符串,您调用.Replace()
函数,但该函数不修改字符串内联—它返回一个新字符串。你需要把结果赋值到某个地方:
if (e.RecordLine.Contains(@"'|"))
e.RecordLine = e.RecordLine.Replace(@"'|", "");
对于最新版本的库,您可以这样做
http://www.filehelpers.net/download/你也可以使用INotifyRead接口:
http://www.filehelpers.net/example/EventsAndNotification/INotifyRead/我假设你正在设置事件?
engine.BeforeReadRecord += engine_BeforeReadRecord;