kullanarak bir txt belgedeki metni bul ve değiştir Merhaba, Visual Basic 2008 Express Edition'ı kullanarak, şablon olarak çalışan ve bir sözcüğün tüm aktarımlarını yenisiyle değiştiren tüm bir .txt dosyasını okumak ve Bir komut düğmesine bastığınızda bu yeni değiştirilmiş metni yeni bir .txt dosyasına kaydedin. Birisi bana birkaç ipucu verebilir mi?Visual Basic
cevap
Dim fileReader As String = My.Computer.FileSystem.ReadAllText("C:\test.txt").Replace("foo", "bar")
My.Computer.FileSystem.WriteAllText("C:\test2.txt", fileReader, False)
Yani FileSystem ait ReadAllText yöntemi kullanmalısınız yardımcı olur umarım şu örneği deneyin değiştirmek istediğiniz kitabın yerini alacak yöntemini değiştirin parametre olarak yolunu geçmek ve kullanmak . Değiştirmenin daha gelişmiş kullanımları için normal ifadeler kullanabilirsiniz. Bu konuda here okuyabilirsiniz.
Kısa versiyon:
My.Computer.FileSystem.WriteAllText("C:\test2.txt", My.Computer.FileSystem.ReadAllText("C:\test.txt").Replace("foo", "bar"), False)
Ben
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
sayesinde hasta bu –
Hata 'Aç' bildirilmedi deneyin. Dosya I/O işlevselliği 'Microsoft.VisualBasic' ad alanında kullanılabilir. \t C: \ Kullanıcılar \ EMACFEL \ AppData \ Yerel \ Geçici Projeler \ WindowsApplication1 \ Form1.vb WindowsApplication1 –
Yanlış bir şey yapıyorum? –
Sadece ihtiyacım yok bok kesip, ben yapıyordum bir bir programın dışında bu çekti.
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
Kodu yeniden kullanmak için kullandığımı yazdığım küçük bir programım var. Bir sınıf oluşturmam gerektiğinde ya da kod dosyasını, varolan biriyle hemen hemen aynı olduğunda kullanıyorum. Bu dört metin kutuları ile temel bir form programı ve dizeleri sabit kodlanmış dışında kabul edilen cevap olarak aynı komutu kullanan bir düğme.
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. Visual Basic:
- 2. Visual Basic
- 3. - Visual Basic .Net
- 4. Uyku işlevi Visual Basic
- 5. Bang vs Visual Basic'te Visual Basic
- 6. Visual Basic Giriş Formu Sorgu
- 7. Visual Basic Düzenli İfade Soru
- 8. Visual Basic 6.0 Durum Açıklaması
- 9. Visual Basic Selection Sıralama "Endeks aralık dışı"
- 10. COM Nesneleri Visual Basic Döküm Dosyasından Nasıl İncelenir?
- 11. Bir Visual Basic (.NET/2010) dosyası okunabilirlik için ayrılabilir mi?
- 12. Visual Basic 6 uygulama exe olarak çalışırken çalışmıyor
- 13. Visual Basic kullanarak bir DB2 saklı yordamı çağırma nasıl?
- 14. IIS'de barındırılan asp.net'ten Visual Basic dll kitaplığının hata ayıklaması
- 15. Verileri kaydetmek ve yüklemek için basit bir yol Visual Basic
- 16. Visual Studio 2015 Ultimate'da XAML Basic Sayfası öğesi nasıl oluşturulur?
- 17. Visual Basic .NET'te bir Char literal bildirimi nasıl yapılır?
- 18. Yüklü Visual Basic Güç Paketlerini hedef sistemde algılıyor mu?
- 19. Visual Basic 6.0 yöntemini C# olarak nasıl ararım?
- 20. Excel Visual Basic - aralığın boş olup olmadığını algıla
- 21. Visual Basic 6'dan bir Java Yöntemi Çağırma
- 22. Visual Basic: Ne görünür hale getirin bile Radyo düğmesi
- 23. Visual Basic, Linux'ta .NET Core tarafından destekleniyor mu?
- 24. Visual Studio 2015'te bir Visual Basic Etkileşimli Penceresi var mı?
- 25. Basic LWJGL üçgeni/OpenGL
- 26. basic Python ifadeleri yüklenmiyorsa
- 27. basic pyodbc bulk insert
- 28. basic hasClass jquery issue
- 29. BASIC kodu için hangi Mime Türünü kullanmalıyım?
- 30. PHP: HTTP Basic - Oturumu Kapat
Thaks has bunu deneyin –
Teşekkürler Kopyala kodunuzu komut düğmesi tıklama olayına yapıştırdım ve programı oluşturduğumda, düğmeyi tıklattığımda hala değiştirilmemiş metin dosyasına yapılan bir değişiklik yok foo ile. –
Anladım. String fileReader doğru metni doğru içeriyor mu? Sorununuz, dosyanın yenilenmemesidir. Kodum sadece metni okumak için yapıldı, henüz yazılmadı, ancak kodumu yakında güncelleyeceğim. –