FileStream 对象可以很好的进行文件操作。
字符串前面加@符号可以让后面的字符串中的\不需要转义。
文件读写都是byte类型,所以需要用到Encoding.UTF8.GetBytes和Encoding.UTF8.GetString对数据做处理。
文件写入完成后后要关闭,不然读不到最新的数据。
读的时候byte数组多大,长度就是多大,文件内容少后面读出来都是"\0",文件多就只读前面的byte.Length个。
using System;
using System.IO;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
FileStream fs = null;
string fileName=@"C:\Users\Shine\Desktop\ConsoleApplication1\1.txt";
try
{
fs = new FileStream(fileName, FileMode.OpenOrCreate);
//fs = new FileStream(fileName, FileMode.Append);
string writeStr = "asdf";
fs.Write(Encoding.UTF8.GetBytes(writeStr), 0, writeStr.Length);
fs.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message.ToString());
}
try
{
fs = new FileStream(fileName, FileMode.OpenOrCreate);
byte[] s = new byte[10];
fs.Read(s, 0, 10);
string readStr = Encoding.UTF8.GetString(s);
Console.WriteLine(readStr);
fs.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message.ToString());
}
fs.Close();
Console.ReadKey();
}
}
}