C# 写入文本内容, 如果文件不存在则创建
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; namespace ConsoleApp17 { class Program { static void Main(string[] args) { // 写入文本内容, 如果文件不存在则创建 // append=false, 则为覆盖方式写入 WriteDoc("D:\\001.txt", "写入内容", true, Encoding.UTF8); Console.WriteLine("ok"); Console.Read(); } /// <summary> /// 创建文本文件并写入内容 /// 例如:创建readme.txt /// </summary> /// <param name="path">文件路径</param> /// <param name="input">写入内容</param> /// <param name="append">是否追加</param> /// <param name="encode">文件编码</param> public static void WriteDoc(string path, string input, bool append, Encoding encode) { try { using (StreamWriter sw = new StreamWriter(path, append, encode)) { sw.Write(input); } } catch { throw; } } /// <summary> /// 创建文本文件并写入内容 /// </summary> /// <param name="path">文件路径</param> /// <param name="input">传入Stream</param> /// <param name="append">是否追加</param> /// <param name="encode">选择编码</param> /// <returns> /// true->写入文本成功 /// false->写入失败(检查路径与权限) /// </returns> public static void WriteDoc(string path, Stream input, bool append, Encoding encode) { try { // 把 Stream 转换成 byte[] byte[] buffer = new byte[input.Length]; // 设置当前流的位置为流的开始 input.Seek(0, SeekOrigin.Begin); input.Read(buffer, 0, buffer.Length); input.Flush(); // 把 byte[] 写入文件 using (StreamWriter sw = new StreamWriter(path, append, encode)) { sw.Write(encode.GetString(buffer)); } } catch { throw; } } } }