2017-05-16 47 views
-1

好吧,我正在爲特殊需要製作一個工具。 將會有.mif文件,我可以打開它作爲文本文件並閱讀內容。如何在使用OpenFileDialog之後在文本文件的每行末尾添加逗號?

使用一些簡單的像

DialogResult openFile = form.openFileDialog1.ShowDialog(); 
     if (openFile == DialogResult.OK) 
     { 
      int size = -1; 
      try 
      { 
       //Add commas here 
      } 
      catch (IOException) 
      { 
      } 
     } 

現在我該怎樣在一個文件中的每一行的末尾添加一個逗號?

例如像這樣

319621.99946835 110837.002493295 
319640.501385461 110850.59860145 
319695.199120806 110879.700271183 

到像這樣(注意在每行末尾的逗號)

319621.99946835 110837.002493295, 
319640.501385461 110850.59860145, 
319695.199120806 110879.700271183, 

現在圖案是此不同的,並且它出現1000的時間在一個文件中

任何想法?

+1

那麼,爲什麼第一線並沒有在最後逗號? –

+0

你自己試圖讀取文件的任何嘗試? –

+0

你的代碼在哪裏讀取文件?你如何存儲文件行?你是將它們寫回文件,還是隻在代碼中使用它們? –

回答

6
string sFilePath = "Insert.File.Path.Here"; 
File.WriteAllLines(sFilePath, File.ReadAllLines(sFilePath).Select(x => string.Format("{0},",x))); 
+1

你可以使用'File.ReadLines'返回一個IEnumerable的''。 –

+1

File.ReadLines不會一次讀取整個文件,因此如果在單行執行,它可能在運行時崩潰。另一方面,File.ReadAllLines一次讀取整個文件。 – Mockingbird

+0

是的,當然,因爲你回寫到同一個文件。我的錯。 –

2

如何逐行讀取文件,您將在this post中找到。

在每一行做簡單:

CurrentLine = CurrentLine + ","; 

免責聲明:本小例子,應該讓您的軌道上。這不是一個代碼寫入服務。下次請至少嘗試自己編寫一些代碼。

1

如果文本文件並不大,你可以試試這個:

var path = "myfile.txt"; 

var lines = File.ReadAllLines (path); 

var newContent = string.Join (",\r\n", lines); 

File.WriteAllText (path, newContent); 

它不會加逗號最後一行。

0

使用File類的方法:

public static string[] ReadAllLines(
    string path 
) 

public static void WriteAllLines(
    string path, 
    string[] contents 
) 

像這樣

string[] lines = File.ReadAllLines(openFile.FileName); 
for (int i = 0; i < lines.Length; i++) { 
    lines[i] += ","; 
} 
File.WriteAllLines(openFile.FileName, lines); 
相關問題