将.txt文件中的文本替换为另一个.txt文件

问题描述:

我想要自动执行我现在手动执行的过程。我目前比较两个.txt文档(我们将它们称为“D1”和“D2”),并创建另一个文档(称为“D3”),这是另外两个文档的组合。我需要做的是在“D1”中找到一个特定的字符串,并在“D2”中找到类似/相同的字符串。一旦出现匹配,我需要用下列与“D2”匹配的字符串替换“D1”中的字符串,并将其作为主文件放入“D3”中。这听起来有点所以这里混乱是我想它是什么样子:将.txt文件中的文本替换为另一个.txt文件

为“D1”的.txt文件格式如下:

1  0010 12345    DEF, DEF-0320    
    1  0020 ABC-00010G   ABC-A,1xx,10%,x1x,0603 
    1  0020A ABC-00010G   ABC-A,1xx,10%,x1x,0603 
    1  0030A ABC-00127G   ABC,4.7xx,10%,x1x,0805 

.txt文件格式“ D2" 如下:

10 BARE PCB 
    20 T C40, C3112 
    B C5, C45, C48 
    30 B C25 

我想比较这两个 “D1” 和 “D2”,找到值 '0010', '0020', '0020A', '0030A' 从 “D1”和“D2”中的值“10”,“20”,“30”。如果(当)有两组数字之间的匹配(即,“0010”和“10”),我想格式化一个新的文件,“D3”,具体如下:

1  AAAA BCD 142717    DEF, DEF-0320     T 
    1  C40  ABC-00010G   ABC-A,1xx,10%,x1x,0603  T 
    1  C3112  ABC-00010G   ABC-A,1xx,10%,x1x,0603  T 
    1  C5  ABC-00010G   ABC-A,1xx,20%,x1x,0603  B 
    1  C45  ABC-00010G   ABC-A,1xx,20%,x1x,0603  B 
    1  C48  ABC-00010G   ABC-A,1xx,20%,x1x,0603  B 
    1  C25  ABC-00127G   ABC,4.7xx,100%,x1x,0805  B 

“T/B”是根据“D1”中第二个数字后面是否有“A”来分配的。如果只有一个数字,则分配'T',如果有'A'则分配'B'。此外,“D3”.txt文档中还有更多行,因为“,”分隔了不同的值(即'20','C40'和'C3112')。对于“D2”中的每个',',需要在“D3”中有一个与上面的行格式相同的新行。

+5

OK,我看到你的任务是什么。但我在这里没有看到问题。你只是要求人们为你写代码。 –

+4

问题是什么?我只在这里看到一个问题声明... –

+0

我不是在寻找书面的代码,而是在如何去做这件事。我对C#非常陌生,并且想了解如何正确比较两个文本文件,并将两个文件中的匹配替换为第二个文件中的其他文本并将其输出到第三个文件中。所以我的问题是,阅读“D1”和“D2”并比较两个类似字符串并继续替换“D1”中的文本的最佳方法是什么? – theNoobGuy

科尔顿写道:

所以我的问题是,什么是去读书“D1”和“D2”,并比较两个相似字符串的最好方法,比出发,以取代“D1”中的文字?

这里的一个方式(没有最好方式,至少不是一个人人彼此同意):

  1. 一行[?]
  2. 分裂阅读这两个文件的行每行在其空白处[?]
  3. 对于这两个文件,创建一个2维数组[?]
  4. 从2个维数组相应的列进行相互比较,并检查一个包含其他[?]
  5. 写东西回来到3号的文件[?]