从两个引擎写入同一个文件

本文关键字:同一个 文件 引擎 两个 | 更新日期: 2023-09-27 18:01:26

你好,我有一个cvs文件,读取,调用和API获取信息,然后写入一个文件,如下所示。目前只有一个带分隔符的记录类。

        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);
                    }
            }

现在我必须创建另一个带分隔符的记录,因为它具有不同的结构,但我需要它写入同一个文件。这意味着有两个不同的文件助手引擎一个接一个地写入同一个文件。这可能吗?

为了便于示例,我简化了字段的数量。它们都非常不同,有很多领域。

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);
                    }
                }
当我有上面的代码时,它完全覆盖了第一个引擎编写的代码。所以我的问题是,我如何让第二个引擎捡起第一个引擎离开的地方,然后更新文件?

thank you

从两个引擎写入同一个文件

 using (engineTravel.BeginAppendToFile(@"C:'Update'" + fileName))
                {
                    foreach (EETravel EEtravel in arrayTravel)
                    {
                        engineTravel.WriteNext(EEtravel);
                    }
                }

在第二个引擎中使用.BeginAppendToFile,它在另一个引擎停止的地方拾取。