File.CreateText建立檔案並寫入文字
阿新 • • 發佈:2018-12-07
最近在網上看到許多關於建立檔案並寫入文字的博文,大概都是以下的方法:
建立一個新文字檔案並寫入一個字串:
using System; using System.IO; public class TextToFile { private const string FILE_NAME = "MyFile.txt"; public static void Main(String[] args) { if (File.Exists(FILE_NAME)) // 確認檔案是否存在. { Console.WriteLine("{0} already exists.", FILE_NAME); return; } using (StreamWriter sw = File.CreateText(FILE_NAME)) { sw.WriteLine ("This is my file."); sw.WriteLine ("I can write ints {0} or floats {1}, and so on.", 1, 4.2); sw.Close(); } } }
第二種:用Streamwriter
using System; using System.IO; class Test { public static void Main() { // Create an instance of StreamWriter to write text to a file. // The using statement also closes the StreamWriter. using (StreamWriter sw = new StreamWriter("TestFile.txt")) { // Add some text to the file. sw.Write("This is the "); sw.WriteLine("header for the file."); sw.WriteLine("-------------------"); // Arbitrary objects can also be written to the file. sw.Write("The date is: "); sw.WriteLine(DateTime.Now); } } }
其實呢,第一種方法最簡單。建立一個檔案直接寫入值,如果你的文字欄位只有英文的話,那推薦使用第一種方法,簡單嘛。但是這種方法有一個缺陷就是它缺乏支援中文的元素。
你只要輸入sw.WriteLine ("我的部落格.");這下慘了,出來的全是亂碼。
第二種方法呢又不能直接建立檔案。哎。。。。真是杯具啊。。。
經過實驗,發現一種簡單的方法:發出來共享下
第三種方法:
string path=Server.MapPath(你的路徑); System.IO.StreamWriter sw = new System.IO.StreamWriter(path, true, System.Text.Encoding.Default); sw.Write(context); sw.Close(); sw.Dispose();