在C#中如何将字符串写入文本文件?

2024-12-26 04:03:41
推荐回答(2个)
回答1:

1、首先我们以一串字符串为例,首先定义一个字符串string s = "abcdefgh";


2、之后的格式是System.IO.File.WriteAllText,或者是.WriteAllLine、.WriteAllBytes等。对于字符串可以System.IO.File.WriteAllText比较好,对于字符串数组用System.IO.File.WriteAllLine比教好


3、我们以System.IO.File.WriteAllText为例,我们会发现它有两个重载,两个重载都会有两个内容一个是写入文件路径和文件名,另外一个是字符串的名字。不同在于最后的编码Encoding.Default上

4、之后我们输入我们的文件位置,及其文件名。其中路径文件名要在“”下,文件名的后缀千万不要忘记写,我们就以txt为例


5、之后键入的是我们的字符串的变量名,最后最好加上Encoding.Default,来防止编码问题


6、我们按F5执行下,我们就可以到C盘打开我们的文件,我们会看到,我们的字符串已经成功写入到文件中

回答2:

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

namespace WindowsFormsApplication1
{
///


/// WriteInLog 的摘要说明。
///

public class WriteInLog
{
private string logFileName;
private int logFileSizes;

///
/// 写入日志文件
///

public WriteInLog()
{
logFileName = @"d:\logfile.txt";
}

///
/// 自动删除日志文件大小,此方法已经重载.
///

/// 日志文件大小,单位KB
public WriteInLog(int fileSize)
: this()
{
if (fileSize != 0)
{
this.logFileSizes = fileSize * 1024;
}
else
{
this.logFileSizes = 1024;
}
}
///
/// 日志文件完全名,如:@"e:\logfile.txt"
///

public string LogFileName
{
set
{
this.logFileName = value;
}
}

///
/// 写入日志信息
///

/// 日志内容
/// 是否自动删除日志
public void writeInLog(string msg)
{
if (logFileSizes != 0)
{
writeInLog(msg, true);
}
else
{
writeInLog(msg, false);
}
}

///
/// 写入日志信息
///

/// 日志内容
/// 是否自动删除日志
private void writeInLog(string msg, bool IsAutoDelete)
{
try
{
FileInfo fileinfo = new FileInfo(logFileName);
if (IsAutoDelete)
{
if (fileinfo.Exists && fileinfo.Length >= logFileSizes)
{
fileinfo.Delete();
}
}
using (FileStream fs = fileinfo.OpenWrite())
{
StreamWriter sw = new StreamWriter(fs);
sw.BaseStream.Seek(0, SeekOrigin.End);
sw.WriteLine("=====================================");
sw.Write("添加日期为:" + DateTime.Now.ToString() + "\r\n");
sw.Write("日志内容为:" + msg + "\r\n");
sw.WriteLine("=====================================");
sw.Flush();
sw.Close();
}
}
catch (Exception ex)
{
ex.ToString();
}
}

}

}

你只要调用这个方法,把字符串输入就行的,文本保存的地址你可以自个改
///
/// 写入日志信息
///

/// 日志内容
/// 是否自动删除日志
public void writeInLog(string msg)
{
if (logFileSizes != 0)
{
writeInLog(msg, true);
}
else
{
writeInLog(msg, false);
}
}