关于VB.NET:StreamReader与StreamWriter在替换txt文档中字符时该如何使用?

我用的是VB2013UPDATE4EXPRESS。作用是:在test.txt文件中,找出所有含“key”的行,并用"hellokitty"代替,保存到此txt文件中。要求... 我用的是VB2013 UPDATE4 EXPRESS。
作用是:在test.txt文件中,找出所有含“key”的行,并用 "hellokitty"代替,保存到此txt文件中。要求要用StreamReader与StreamWriter。

先上代码:
Imports System.IO
Imports System.Text
Public Class Form1

Private Sub btnTest_Click(sender As Object, e As EventArgs) Handles btnTest.Click
Dim mytextfile As String = "F:\test.txt"
Dim line As String = ""

Dim newline As String = ""

Dim myfilereader As New StreamReader(mytextfile, Encoding.ASCII)
Dim myfilewriter As New StreamWriter(mytextfile, False, Encoding.ASCII)

Do Until myfilereader.EndOfStream

line = myfilereader.ReadLine()
If line.Contains("key") Then

newline = line.Replace("key", "hellokitty")
myfilewriter.Write(newline)

End If

Loop

myfilereader.Close()
myfilewriter.Close()
End Sub

End Class

现在问题是,一旦调试,会发生以下错误:
其他信息: 文件“F:\test.txt”正由另一进程使用,因此该进程无法访问此文件。

请问:怎样修改代码,可以达成用StreamReader与StreamWriter替换字符的作用?
谢谢。
展开
 我来答
adai_008
推荐于2016-07-10 · TA获得超过1385个赞
知道大有可为答主
回答量:1152
采纳率:83%
帮助的人:799万
展开全部
问题应该是出在StreamReader与StreamWriter不能同时对同一个文件进行操作。
可以边读边替换并保存到一个变量或数组中(感觉用StringBuilder最好),然后关闭StreamReader再打开StreamWriter进行保存。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式