又没有哪位大侠能给我讲讲Seek方法的使用方法,在什么时候使用,有什么用,拜谢了!
解决方案 »
- 这个是什么控件?
- c#
- 如何单击datagridview的一行时,得到当前行的值,显示在TEXTBOX控件中
- 一直没有解决一个SQL语句的问题,在线等,急啊
- C#编程封局域网中其它计算机IP地址或端口号
- 如何改变状态栏的背景色,在线等待!
- 高手帮忙:VB.net 转换成 C#.net(ComboBox 控件添加到 Windows 窗体 DataGrid 控件)
- access Repeater 分页,样式如下,需要手写的分页
- ???联接到本地SQL数据库的语句是什么(初学者提问)
- 究竟Visual C# .NET怎么连接PPC2002???
- Using语句的详细介绍
- 希望大家可以帮我解决这个纠结的问题
二进制方式打开文件,跳转到最后。追加一段字节。以扩展二进制数据文件。
例如//定义字节流对象,打开文件。离开using块则自动调用stream对象的Dispose方法并释放stream对象。
using (FileStream stream = File.Open("file.txt", FileMode.Open))
{
//跳转文件指针到最后一个字节
stream.Seek(-1, SeekOrigin.End);
//最后一个字节修改为0
stream.WriteByte(0);
}
StreamWriter sw = new StreamWriter(fs);
sw.writeLine("Done!");
然后用这个fs创建一个StreamWriter。
因为StreamWriter具有Encoding,可以调用Write(string)和WriteLine(String)。但文件方式不具有seek。所以fs先seek到位置,再用fs创建StreamWriter对象。写文本。
5678
9012方法:private static void TestWriteFile()
{
using (FileStream fs = File.Open("data.txt", FileMode.Open))
{
//跳过第一行4个字节和回车换行,一共6字节。
fs.Seek(6, SeekOrigin.Begin);
StreamWriter writer = new StreamWriter(fs);
writer.WriteLine("0000");
writer.Close();
}
}将把第二行修改为0000
{
try
{
fs = new FileStream(path, FileMode.Append,FileAccess.Write,FileShare.None);
}
catch
{
Console.WriteLine("record create error!");
return;
}
Console.WriteLine("请输入Name:");
Console.ReadLine();
arecord.name = Console.ReadLine();
Console.WriteLine("请输入分数:");
arecord.num = int.Parse(Console.ReadLine());
fs.Seek(4, SeekOrigin.Begin);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine("姓名为:{0} 分数为:{1}",arecord.name,arecord.num);
sw.Close();
fs.Close();
}
报错为:无法通过向后搜索来覆盖以追加模式打开的文件中的原有数据。
直接sw.WriteLine