2014-02-24 121 views
-1

我有两个管道分隔的文本文件(比如说,A.txt和B.txt)。C#如何将一种文件格式转换为另一种格式?

下面是A.TXT文件格式,标准格式(可以认为是通用套装)

"EmpId"|"FName"|"LName"|"Sex"|"DOB"|"SSN"|"TagId1"|"TagId2" 

下面是B.txt文件(可以认为子集)与列和2条记录。

"SSN"|"LName"|"FName"|"DOB"|"Sex"|"EmpId" 
"123"|"Barrat"|"Alanzon"|"1983"|"F"|"4455" 
"678"|"Alexia"|"Timothy"|"1975"|"M"|"2222"||"baz" 

我需要将B.txt转换为A.txt格式的列顺序。 预期的结果是:

"EmpId"|"FName"|"LName"|"Sex"|"DOB"|"SSN"|"TagId1"|"TagId2" 
"4455"|"Alanzon"|"Barrat"|"F"|"1983"|"123"||| 
"2222"|" Timothy "|" Alexia"|"M"|"1975"|"678"||"baz" 

如何去呢?

+0

首先尝试格式化您的Q – apomene

+0

您尝试过什么吗? – trogdor

+0

您是否需要在您正在编写的程序中执行此操作或者您是否正在寻找可以执行此操作的工具?你在运行什么操作系统? –

回答

1

由于两种格式基本相同,除了列被重新排序之外,我建议只将B.txt读入字典(列名作为键),然后将此字典打印到文件中,列中正确的顺序。

0
awk -F'|' -v OFS='|' '{print $6, $3, $2, $5, $4, $1, $7, $8}' B.txt > A.txt 
相关问题