您好我有一个读取的cvs文件,调用和API获取信息然后写入文件,如下所示。目前只有一个Delimited Record类。
public class EE
{
[FieldOrder(1)]
public string Name;
[FieldOrder(2)]
public string Description;
[FieldOrder(3)]
}
....creating engine....
using (enginev2.BeginWriteFile(@"C:\Update\" + fileName))
{
foreach (EEEEoutput in arrayEmployees)
{
enginev2.WriteNext(EEoutput);
}
}
现在我必须创建另一个分隔记录,因为它有不同的结构,但我需要它写入同一个文件。意味着有两个不同的filehelpers引擎一个接一个地写入同一个文件。这有可能吗?
为了举例,我已经简化了字段数量。它们都非常不同,并且有很多领域。
public class EETravel
{
[FieldOrder(1)]
public string TrxType;
[FieldQuoted('"', QuoteMode.OptionalForBoth, MultilineMode.AllowForRead)]
[FieldOrder(2)]
public string EmployeeID;
}
using (engineTravel.BeginWriteFile(@"C:\Update\" + fileName))
{
foreach (Employees_Travel EEtravel in arrayTravel)
{
engineTravel.WriteNext(EEtravel);
}
}
当我拥有上面的代码时,它完全超过了第一个引擎编写的内容。所以我的问题是,我如何让第二个引擎在第一个引擎停止的地方取出,然后更新文件?
谢谢
答案 0 :(得分:1)
using (engineTravel.BeginAppendToFile(@"C:\Update\" + fileName))
{
foreach (EETravel EEtravel in arrayTravel)
{
engineTravel.WriteNext(EEtravel);
}
}
在第二个引擎中使用了.BeginAppendToFile
,并在其他引擎停止的地方拾起。