C#怎样写TXT文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#怎样写TXT文件相关的知识,希望对你有一定的参考价值。
现在我的TXT文件A在D盘的PAT文件夹中,怎么用C#往这个文件中写多西?比如写:
姓名
年龄
职业
求代码
public static void AppendAllText(string path, string contents)
System.IO.File 的成员
摘要:
打开一个文件,向其中追加指定的字符串,然后关闭该文件。如果文件不存在,此方法创建一个文件,将指定的字符串写入文件,然后关闭该文件。
参数:
path: 要将指定的字符串追加到的文件。
contents: 要追加到文件中的字符串。
public static void AppendAllText(string path, string contents, System.Text.Encoding encoding)
System.IO.File 的成员
摘要:
将指定的字符串追加到文件中,如果文件还不存在则创建该文件。
参数:
path: 要将指定的字符串追加到的文件。
contents: 要追加到文件中的字符串。
encoding: 要使用的字符编码。
public static string ReadAllText(string path)
System.IO.File 的成员
摘要:
打开一个文本文件,读取文件的所有行,然后关闭该文件。
参数:
path: 要打开以进行读取的文件。
返回值:
包含文件所有行的字符串。
public static string ReadAllText(string path, System.Text.Encoding encoding)
System.IO.File 的成员
摘要:
打开一个文件,使用指定的编码读取文件的所有行,然后关闭该文件。
参数:
path: 要打开以进行读取的文件。
encoding: 应用到文件内容的编码。
返回值:
包含文件所有行的字符串。
public static void WriteAllText(string path, string contents)
System.IO.File 的成员
摘要:
创建一个新文件,在其中写入指定的字符串,然后关闭文件。如果目标文件已存在,则覆盖该文件。
参数:
path: 要写入的文件。
contents: 要写入文件的字符串。
public static void WriteAllText(string path, string contents, System.Text.Encoding encoding)
System.IO.File 的成员
摘要:
创建一个新文件,在其中写入指定的字符串,然后关闭文件。如果目标文件已存在,则覆盖该文件。
参数:
path: 要写入的文件。
contents: 要写入文件的字符串。
encoding: 一个 System.Text.Encoding 对象,表示应用于字符串的编码。 参考技术A 给你一个我现在用的:文本文件的读写,ini文件的读写
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Windows.Forms;
namespace SkyToolBox.FileIO
public class TxtFile
private string _FilePath = "";
/// <summary>
/// 不定的某信文件的完整路径
/// </summary>
public string FilePath
get return _FilePath;
set _FilePath = value;
private string _FileName = "";
/// <summary>
/// 在当前程序目录下的文件
/// </summary>
public string FileName
get return _FileName;
set _FileName = value;
/// <summary>
/// 获取一个文本文件的内容
/// </summary>
/// <param name="filepath"></param>
/// <returns></returns>
public static string GetText(string filepath)
using (StreamReader reader = new StreamReader(filepath))
//string strLine = reader.ReadLine();
return reader.ReadToEnd();
/// <summary>
/// 向指定的文本文件里写入信息
/// </summary>
/// <param name="filepath"></param>
/// <param name="myStr"></param>
public static void WriteText(string filepath, string myStr)
using (StreamWriter writer = new StreamWriter(filepath))
writer.WriteLine(myStr);
/// <summary>
/// 将指定信息写入程序日志(当前程序目示下的LOG文件夹内)(本函数只支持应用程序,不支持web程序)
/// </summary>
/// <param name="sMsg"></param>
public static void WriteLog(string sMsg)
if (sMsg != "")
//Random randObj = new Random(DateTime.Now.Millisecond);
//int file = randObj.Next() + 1;
string filename = DateTime.Now.ToString("yyyyMMdd") + ".log";
try
FileInfo fi = new FileInfo(Application.StartupPath + "\\log\\" + filename);
if (!fi.Exists)
using (StreamWriter sw = fi.CreateText())
sw.WriteLine(DateTime.Now + "\n" + sMsg + "\n");
sw.Close();
else
using (StreamWriter sw = fi.AppendText())
sw.WriteLine(DateTime.Now + "\n" + sMsg + "\n");
sw.Close();
catch (Exception ex)
Console.WriteLine(ex.Message);
public bool WriteLine(string dataText)
FileStream fs = null;
StreamWriter sw = null;
bool ret = true;
try
string FileName = _FilePath;
//CHECK文件目录存在不
if (!Directory.Exists(FileName))
Directory.CreateDirectory(FileName);
FileName += @"\" + _FileName;
//CHECK文件存在不
if (!File.Exists(FileName))
FileStream tempfs = File.Create(FileName);
tempfs.Close();
fs = new FileStream(
FileName,
FileMode.Append,
FileAccess.Write,
FileShare.None);
fs.Seek(0, System.IO.SeekOrigin.End);
sw = new StreamWriter(fs, System.Text.Encoding.UTF8);
sw.WriteLine(dataText);
if (sw != null)
sw.Close();
sw = null;
if (fs != null)
fs.Close();
fs = null;
catch (Exception)
ret = false;
finally
try
if (sw != null)
sw.Close();
sw = null;
if (fs != null)
fs.Close();
fs = null;
catch
return ret;
using System;
using System.Collections;
using System.ComponentModel;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
namespace SkyToolBox.FileIO
public class IniFile
private string inipath;
/// <summary>
/// 配置文件的地址
/// </summary>
public string Inipath
get return inipath;
set inipath = value;
[DllImport("kernel32")]
private static extern int GetPrivateProfileInt(
string lpAppName,
string lpKeyName,
int nDefault,
string lpFileName
);
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(
string lpAppName,
string lpKeyName,
string lpDefault,
StringBuilder lpReturnedString,
int nSize,
string lpFileName
);
[DllImport("kernel32")]
private static extern bool WritePrivateProfileString(
string lpAppName,
string lpKeyName,
string lpString,
string lpFileName
);
/// <summary>
/// 构造方法
/// </summary>
/// <param name="INIPath">文件路径</param>
public IniFile(string INIPath)
inipath = INIPath;
public IniFile()
/// <summary>
/// 写入INI文件
/// </summary>
/// <param name="Section">项目名称(如 [TypeName] )</param>
/// <param name="Key">键</param>
/// <param name="Value">值</param>
public bool IniWriteValue(string Section, string Key, string Value)
return WritePrivateProfileString(Section, Key, Value, this.inipath);
/// <summary>
/// 读出INI文件
/// </summary>
/// <param name="Section">项目名称(如 [TypeName] )</param>
/// <param name="Key">键</param>
public string IniReadValue(string Section, string Key)
StringBuilder temp = new StringBuilder(500);
int i = GetPrivateProfileString(Section, Key, "", temp, 500, this.inipath);
return temp.ToString();
/// <summary>
/// 验证文件是否存在
/// </summary>
/// <returns>布尔值</returns>
public bool ExistINIFile()
return File.Exists(inipath);
public int GetIntValue(string section, string key, int def)
return GetPrivateProfileInt(section, key, def, inipath);
public void WriteIntValue(string section, string key, int iVal)
WritePrivateProfileString(section, key, iVal.ToString(), inipath);
public void WriteStringValue(string section, string key, string strVal)
WritePrivateProfileString(section, key, strVal, inipath);
public void DelKey(string section, string key)
WritePrivateProfileString(section, key, null, inipath);
public void DelSection(string section)
WritePrivateProfileString(section, null, null, inipath);
参考技术B public void Write(string text)
FileStream fs = new FileStream("D:\\A.txt",FileMode.Apend);
StreamWriter sw = new StreamWriter(fs,Encoding.Default);
sw.Write(text);
sw.Close();
fs.Close();
本回答被提问者采纳 参考技术C using System.IO;
String[] lines = new String[] "姓名", "年龄", "职业" ;
if (!Directory.Exists(@"D:\PAT"))
Directory.CreateDirectory(@"D:\PAT");
File.WriteAllLines(@"D:\PAT\xx.txt", lines, Encoding.Default);
c# 日志文件的使用
以前写代码时写日志文件,是用新建.txt文件去保存日志文件,写起来很麻烦,C#本来提供了一种log文档的使用方式:
1 首先添加Nlog的引用 须要 NLog.dll库支持
2 实例化一个log的类
private NLog.Logger log = NLog.LogManager.GetCurrentClassLogger();
3 使用时只写上log.bug(str)即可。
以上是关于C#怎样写TXT文件的主要内容,如果未能解决你的问题,请参考以下文章