
<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 })
__________________________________________________________________________
檔案長度截斷為零,重寫檔案内容
__________________________________________________________________________
不知為什麼在學校的機房裡它會自動覆寫,可是在我的機子上就是不行。
__________________________________________________________________________