文件操作

mydear303 2010-07-14 05:25:01
我想把一段话加到一个文件的第一行,但不用读取原文件的内容,啥做,有人会的说一下
...全文
67 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
daddi 2010-07-14
  • 打赏
  • 举报
回复
Dim Fs As FileStream = New FileStream(fname, FileMode.Creat)
Fs.Seek(999, SeekOrigin.Begin)
Fs.Write()
daddi 2010-07-14
  • 打赏
  • 举报
回复
在现有NTFS下这是不可能完成的任务,但是可以利用filestream折中一下写入。

你预先估计未来将写的第一行占位多少byte,假设为1000,那么在写入原有文件的时候从1000个字节开始写,前面就空出1000个字节了,下次再写第一条数据的时候就可以在这1000个字节上写。

Dim Fs As FileStream = New FileStream(fname, FileMode.Open, FileAccess.Read)
Fs.Seek(999, SeekOrigin.Begin)
Fs.Write()

很多数据库的varchar(50)就是这个原理,首先分配50个byte的空间,写入的时候就在这50个空间中写。

你要在任意位置写的话,就一定要在该位置预留空间。
wuyq11 2010-07-14
  • 打赏
  • 举报
回复
List<string> lst=new List<string>(File.ReadAllLines(""));

File.WriteAllLines


aimeast 2010-07-14
  • 打赏
  • 举报
回复
fat文件系统可以直接修改索引列表实现,ntfs就难了
ajq1989 2010-07-14
  • 打赏
  • 举报
回复

不用读取原文件的内容
kkun_3yue3 2010-07-14
  • 打赏
  • 举报
回复

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧