2021年8月24日 星期二

C# - 寫入文字檔

 (1) 直接寫入,只能寫一次,因為會覆蓋

  string str1 = " welcome , hello , 12345 ";

  string str2 = " welcome , hello , 54321 ";

  // 將資料寫入,若檔案已存在則會被覆蓋

  System.IO.File.WriteAllText("hello.txt", str1); 

  // 寫入完畢,立即關閉,只能保留最後一次的寫入資料

  System.IO.File.WriteAllText("hello.txt", str2);

  MessageBox.Show("OK");

結果 

最後寫入結果只保留最後一次的資料


(2) 可以寫入多行但是還是有覆蓋的情形,使用 StreamWriter

 string str1 = " welcome , hello , 12345 ";

 string str2 = " welcome , hello , 54321 ";

 // using System.IO; 

 // 資料存在則會覆蓋

using (StreamWriter outputFile = new StreamWriter("WriteText1.txt"))

            {

                outputFile.WriteLine(str1);

                outputFile.WriteLine(str2);

                // 寫入完畢會自動關閉

                WriteToFile( outputFile, "1233456789");

            }             

MessageBox.Show("OK");

結果:可以寫入多行,但是下一次時,資料還是會被清除再來一次


(3) 可以寫入多行,可以附加資料,使用 StreamWriter,僅在宣告時有小細節,注意紅字部分

 string str1 = " welcome , hello , 12345 ";

string str2 = " welcome , hello , 54321 ";

// using System.IO; 

// 資料存在則會附加

using (StreamWriter outputFile = new StreamWriter("WriteText2.txt", true))

            {

                outputFile.WriteLine(str1);

                outputFile.WriteLine(str2);

                // 寫入完畢會自動關閉

                WriteToFile(outputFile, "ABCDEFGHIJK");

            }

MessageBox.Show("OK");


共用

 private void WriteToFile( StreamWriter a, string str1)

        {

            a.WriteLine(str1);

        }




沒有留言:

張貼留言

DiCom 篇

 首先,要找到參考資料 (1) dicomlibrary: https://www.dicomlibrary.com/dicom/dicom-tags/  ,認識DiCom 的標籤。 (2) 再來一個參考文件: 數位醫學影像去識別化實作指引手冊 (3)DiCom 元件: GitH...