我有一个固定宽度的文本文件转换为XML。你能告诉我如何详细说明吗?
我的示例文字看起来像这样......
9621120080828200808290001084713CENTRAL TIONG NAM WAREHOUSE 086014286100501330071881000020000000000000090002PC 20.000 20.000 81E0 600.000 20.000 PC UB
9621120080828200808290001084713CENTRAL TIONG NAM WAREHOUSE 086014286100501330071881900001000000000000011131PC 1000.000 24000.000 8100 13680.000 1920.000 47/2008 CRTUB 00100000000003346495
从第一行我想根据长度转换文本文件..
File No
的前5个字符,即96211
接下来的8个字符Shipment Creation Date
,20080828
接下来的8个字符到Delivery Date
,20080829
等等......
注意:前两行被视为一条记录.....
我想要输出如下
<FileNo>96211<FileNo>
<ShipmentCreationDate>20080828<ShipmentCreationDate>
<DeliveryDate>20080829<DeliveryDate>
提前致谢!
答案 0 :(得分:4)
我建议您查看FileHelpers库。
这是一个C#库,允许您非常快速地将固定宽度或分隔文件导入C#。
然后,您可以轻松转换并从C#中将这些记录作为XML进行扫描 - 完全没问题!
详细说明:
XmlSerializer
,您可以轻松地将这些对象序列化为XML 应该是大约50行或更少的代码: - )
答案 1 :(得分:0)
如果您无法控制输出应用程序,则必须编写转换器工具。
采用您的首选语言并匹配XML-Lib并编写一个小应用程序来解析数据并将其写为XML。