首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

write写入 覆盖解决思路

2012-02-08 
write写入 覆盖我想在打开的一个txt文件里写东西,然后按原路径保存。swNewStreamWriter(n.file)sw.BaseStr

write写入 覆盖
我想在打开的一个txt文件里写东西,然后按原路径保存。
sw   =   New   StreamWriter(n.file)
                        sw.BaseStream.Seek(0,   SeekOrigin.Begin)
                        sw.Write(n.RichTextBox1.Text)
                        sw.Close()
假如原文件里有6个字,我把他们都删了,再写3个字,然后保存。可是会发现文件里的还是6个字原文件的后3个字还在。这个怎么办,谢谢各位大侠。

[解决办法]
文本文件是顺序存储的,没有删除的说法
只能覆盖,你必须把这三个字后面全部读出,再写文件,覆盖后三个字~
[解决办法]
或者用变通的办法,后三个字写入别的字符比如全角空格
[解决办法]
字符数必须相同,可以加三个空格写入 "789 "
否则的话就只能把后面的全部写入了
[解决办法]
To guzhilei1986 (空格)

没太理解你的问题,仅从你的例子分析,可以用下面的代码实现
System.IO.File.WriteAllLines(filename, New String() { "789 "})
[解决办法]
文件长度截断为零,重写文件内容

热点排行