[VB.NET]write写入 覆盖

VB.NET源码-156个实用实例哦…… <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
write写入 覆盖
我想在打开的一个txt文件里写东西,然后按原路径保存。
sw = New StreamWriter(n.file)
sw.BaseStream.Seek(0, SeekOrigin.Begin)
sw.Write(n.RichTextBox1.Text)
sw.Close()
假如原文件里有6个字,我把他们都删了,再写3个字,然后保存。可是会发现文件里的还是6个字原文件的后3个字还在。这个怎么办,谢谢各位大侠。
__________________________________________________________________________
文本文件是顺序存储的,没有删除的说法
只能覆盖,你必须把这三个字后面全部读出,再写文件,覆盖后三个字~
__________________________________________________________________________
或者用变通的办法,后三个字写入别的字符比如全角空格
__________________________________________________________________________
也许大哥(大姐)没有明白我的意思。
比如原文件是:123456
我打开后修改为:789
然后保存
再打开文件是:789456
怎么才能把456去掉?
__________________________________________________________________________
那样要占空间吗,再说要判断个数,再加空格要增加一些代码不是?
__________________________________________________________________________
字符数必须相同,可以加三个空格写入 789
否则的话就只能把后面的全部写入了
__________________________________________________________________________
To guzhilei1986 (空格)

没太理解你的问题,仅从你的例子分析,可以用下面的代码实现
System.IO.File.WriteAllLines(filename, New String() { 789 })
__________________________________________________________________________
文件长度截断为零,重写文件内容
__________________________________________________________________________
不知为什么在学校的机房里它会自动覆盖,可是在我的机子上就是不行。
__________________________________________________________________________
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值