2017-07-18 58 views
0

即時通訊新的C#,但學習,因爲我前進,所以請原諒我,如果我的問題可能對你們大多數人來說太簡單了。 :-)我想將三個txt文件合併成一個單一的文件在c#

我的問題有兩個部分。

  • 第一:我有三個TEXTFILES(固定名稱)與完全以 不同的內容。我現在要將這些組合成一個單一的 文本文件。

  • 第二:在這個組合過程中,我還希望這些文件中的每個逗號(,)
    都被更改爲輸出組合文件中的點(。)。

我已經能夠做到在VB與的ReadLine結合的StreamReader和StreamWriter類似的東西,但不能讓它在C#中工作。

我很感激任何幫助,我可以得到。

/托馬斯

+1

將3個文件讀到字符串(谷歌它,它不難)爲你的''''替換'',''''並且只加'+'它們對方 – EpicKip

回答

4

如果文件不是很大,你可以使用這個片段:

File.WriteAllText("newfile", String.Concat(File.ReadAllText("file1"),File.ReadAllText("file2"),File.ReadAllText("file3")).Replace(",",".")); 
2

一般情況下當文件長任意許多文件,你可以嘗試LinqSelectMany

using System.IO; 
using System.Linq; 

... 

string[] fileNames = new string[] { 
    @"C:\MyFile1.txt", 
    @"C:\MyFile2.txt", 
    @"C:\MyFile3.txt", 
}; 

... 

File.WriteAllLines(@"C:\MyCombinedFile.txt", fileNames 
    .SelectMany(file => File.ReadLines(file)) 
    .Select(line => line.Replace(',', '.'))); 
0
string[] files = new string[]{ @"E:\myfile1.txt", @"E:\myfile2.txt", @"E:\myfile3.txt" }; 

     string fileContent = string.Empty; 
     foreach (var fileName in files) 
     { 
      using (System.IO.StreamReader Reader = new System.IO.StreamReader(fileName)) 
      { 
       fileContent += Reader.ReadToEnd(); 
      } 
     } 
     fileContent = fileContent.Replace(',', '.'); 

     System.IO.File.WriteAllText(@"E:\myfile.txt", fileContent); 
+0

謝謝你們。問題解決了。你搖滾! :-) –

相關問題