如何将具有不同记录布局的文本文件转换为XML

本文关键字:文本 文件 转换 XML 布局 记录 | 更新日期: 2024-10-19 23:52:35

我有一个文本文件(从COBOL遗留系统生成),它具有不同的记录布局。类似于此:

http://www.stylusstudio.com/varying_record_layout.html

我想做的是使用C#解析该文本文件,得到XML格式的输出,然后将其内容加载到数据库中。(简而言之,使ETL操作)。

如何使用C#完成此任务并处理XML API?一些建议,提示,&c

如何将具有不同记录布局的文本文件转换为XML

您可以尝试以下操作:

  1. 编写代码手动创建DataSet
  • CCD_ 2,其模拟每种类型的异构记录。或
  • 包含容纳所有异构数据的单个CCD_ 3
  1. 分析记录,并将其分发到DataSet 中相应的DataTables

  2. 使用与以下代码类似的代码序列化DataSet

然后,如果需要操作数据,可以很容易地将数据直接加载到DataSet

private void SerializeDataSet(DataSet ds, string filename){
    XmlSerializer ser = new XmlSerializer(typeof(DataSet));    
    TextWriter writer = new StreamWriter(filename);
    ser.Serialize(writer, ds);
    writer.Close();
}

这里有一个指向MSDN文档的链接,用于XML序列化。