こんにちは、Visual Basic 2008 Express Editionを使用して、私の目標は、テンプレートとして機能する.txtファイル全体を読み込み、単語のすべての単語を新しいものに置き換えます。コマンドボタンを押すと、この新しい変更されたテキストを新しい.txtに保存します。誰か私にいくつかのヒントを与えることができますかVisual Basicを使用してtxtドキュメント内のテキストを検索し置換する
答えて
Dim fileReader As String = My.Computer.FileSystem.ReadAllText("C:\test.txt").Replace("foo", "bar")
My.Computer.FileSystem.WriteAllText("C:\test2.txt", fileReader, False)
に役立ちます願っています次の例を試してみてください。 replaceのより高度な使用法については、正規表現を使用することができます。そのことについてはhereを読むことができます。
短いバージョン:
My.Computer.FileSystem.WriteAllText("C:\test2.txt", My.Computer.FileSystem.ReadAllText("C:\test.txt").Replace("foo", "bar"), False)
は、私はそれはあなたが、ファイルシステムのReadAllTextメソッドを使用し、パラメータとしてパスを渡すと交換したいものを置き換えるためにReplaceメソッドを使用する必要があります
Dim lOpenFile As Long
Dim sFileText As String
Dim sFileName As String
sFileName = "C:\test.txt"
'open the file and read it into a variable
lOpenFile = FreeFile
Open sFileName For Input As lOpenFile
sFileText = Input(LOF(lOpenFile), lOpenFile)
Close lOpenFile
'change 'John Doe' to 'Mary Brown'
sFileText = Replace(sFileText, " John Doe ", " Mary Brown ")
'write it back to the file
lOpenFile = FreeFile
Open sFileName For Output As lOpenFile
Print #lOpenFile, sFileText
Close lOpenFile
おかげで病気にこの –
エラー '開く' と宣言されていないを試してみてください。ファイルI/O機能は、 'Microsoft.VisualBasic'名前空間で使用できます。 \t C:¥Users¥EMACFEL¥AppData¥Local¥Temporary Projects¥WindowsApplication1¥Form1.vb WindowsApplication1 –
何か問題がありますか? –
私はちょうどあなたが必要としないがらくたをカット、作ったプログラムのうち、これを引っ張りました。
Private Sub UPDATECODES_Click(sender As Object, e As EventArgs) Handles UPDATECODES.Click
Dim NEWCODE As String = NEWCODEBOX.Text
Dim CC As String = CURRENTCODE.Text
Dim oldcode As String
Dim codelines(0 To 1) As String
Dim olddate As String
Using r1 As New System.IO.StreamReader(CODEDIR & "d.dat")
olddate = r1.ReadToEnd
End Using
Using r2 As New System.IO.StreamReader(CODEDIR & "oc.dat")
oldcode = r2.ReadToEnd
End Using
If System.IO.File.Exists(CODEDIR & "new code.txt") Then
System.IO.File.Delete(CODEDIR & "new code.txt")
End If
If System.IO.File.Exists(CODEDIR & "CC.DAT") Then
If IO.File.Exists(CODEDIR & "oc.dat") Then
IO.File.Delete(CODEDIR & "OC.DAT")
End If
My.Computer.FileSystem.RenameFile(CODEDIR & "CC.DAT", "OC.DAT")
Dim FILESTREAM As System.IO.FileStream
FILESTREAM = New System.IO.FileStream(CODEDIR & "CC.DAT", System.IO.FileMode.Create)
FILESTREAM.Close()
End If
Using WRITER As New System.IO.StreamWriter(CODEDIR & "CC.DAT")
WRITER.WriteLine(NEWCODE)
End Using
Dim currentlines(0 To 1) As String
Dim a As Integer
Dim TextLine(0 To 1) As String
a = 0
Using sr As New System.IO.StreamReader(CODEDIR & "internet code.txt")
While Not sr.EndOfStream
ReDim codelines(0 To a)
codelines(a) = sr.ReadLine()
codelines(a) = codelines(a).Replace(CURRENTCODE.Text, NEWCODE)
codelines(a) = codelines(a).Replace(olddate, DATEBOX1.Text & " - " & DATEBOX2.Text)
Dim newfile As String = (CODEDIR & "new code.txt")
Using sw As New System.IO.StreamWriter(newfile, True)
sw.WriteLine(codelines(a))
End Using
a = a + 1
End While
End Using
Using sw2 As New System.IO.StreamWriter(CODEDIR & "d.dat")
sw2.WriteLine(date1 & " - " & date2)
End Using
System.IO.File.Delete(CODEDIR & "internet code.txt")
My.Computer.FileSystem.RenameFile(CODEDIR & "new code.txt", "internet code.txt")
CURRENTCODE.Text = NEWCODE
End Sub
私はコードを再利用するために書いた小さなプログラムがあります。既存のものとほとんど同じクラスまたはコードファイルを作成する必要があるときに使用します。 4つのテキストボックスと、文字列がハードコードされていないことを除いて、受け入れられた回答と同じコマンドを使用するボタンを持つ基本的なフォームプログラムです。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim source As String = txtSource.Text
Dim destination As String = txtDestination.Text
Dim oldText As String = txtOldText.Text
Dim newText As String = txtNewText.Text
My.Computer.FileSystem.WriteAllText(destination, My.Computer.FileSystem.ReadAllText(source).Replace(oldText, newText), False)
End Sub
- 1. ファイル内のテキストを検索して置き換えるコマンドを使用して
- 2. Powershell:検索と置換を使用してテキスト文書内の一意の値を置換する
- 3. txtファイルのテキストをWindowsのバッチファイルで検索して置き換えます
- 4. テキストを検索してjQueryを使用して置換する方法
- 5. バッチスクリプトウィンドウを使用してtxtファイル内を検索する7
- 6. javacriptを使用してtxtファイル内を検索する
- 7. サブフォルダ内での検索と置換/ TXT CSVファイルからPython 3を使用
- 8. AccessでVisual Basicを使用してフォルダ内のすべてのPDFを検索する
- 9. テキストファイル内の複数の文字列を検索して置き換え、powershellを使用して置換する
- 10. bashスクリプトを使用してテキストを検索および置換する
- 11. IllustratorでAppleスクリプトを使用してテキストを検索および置換する
- 12. Xcode 3.2選択したテキストを検索して置換する
- 13. vimエディタを使用して端末からファイル内のテキストを検索して置き換える方法
- 14. Pythonを使用してテキストファイル内を検索して置き換えます
- 15. Pythonを使用してtxtファイル内で文字列を検索
- 16. Regexp Replace(as3) - テキストを使用して置換を検索しますが、置換しません。
- 17. JREPL.BATを使用してファイル内のテキストを検索して置き換えます
- 18. 正規表現を使用してxml文書内のテキストを検索して置き換えます
- 19. VB.netを使用してXML内のテキストを検索して置き換えます。
- 20. テキストをコピーして検索と置換に使用するMicrosoft Wordマクロ
- 21. pythonのテキストを検索して置換する
- 22. Applescript Excelシートのテキスト文書を検索して置換する
- 23. (jQuery)特定のテキストを検索して置換する
- 24. PHP、WordpressでHtmlのテキストを検索して置換する
- 25. 入力プレースホルダのテキストをjQueryで検索して置換する
- 26. StringTokenizerを使用してテキスト内の単語を検索する
- 27. 端末を使用してフォルダ内のテキストを検索する
- 28. C# - 2つの.txtファイルを使用してテキストを比較/置換する
- 29. OpenXMLを使用して文書内のテキストを置換する
- 30. 検索/置換を使用してvbNullStringをクリアする
これは役に立ちます –
ありがとうございます。コマンドボタンのクリックイベントにコードを貼り付けてコピーし、プログラムをビルドするときにボタンをクリックするとテキストファイルに置き換えられませんfooと一緒に。 –
を参照してください。 String fileReaderに正しいテキストが正しく格納されていますか?あなたの問題は、ファイルが更新されないということです。私のコードは、テキストを読むためだけに作成されましたが、まだ書かれていませんでしたが、すぐにコードを更新します。 –