Simple Textdateimanager-Klasse

    • VB.NET

      Simple Textdateimanager-Klasse

      Hey.

      Hier eine simple Klasse mit der man bestimmte Zeilen aus Dateien entnehmen, und ändern kann.
      Ich persönlich benutze sie ganz gerne als Manager für Configdateien.

      Klasse:

      VB.NET-Quellcode

      1. Imports System.IO
      2. Public Class ConfigManager
      3. #Region "ZeilenLeser"
      4. Public Zeileninhalt As String
      5. Public Function ReadLine(ByVal File As String, ByVal Zeile As String)
      6. Try
      7. Dim Textfile As TextReader = New StreamReader(File)
      8. Dim cnt As Integer = 0
      9. Do Until cnt = Zeile
      10. Textfile.ReadLine()
      11. cnt += 1
      12. Loop
      13. Zeileninhalt = Textfile.ReadLine()
      14. Textfile.Close()
      15. Catch
      16. End Try
      17. End Function
      18. 'USAGE
      19. ' Dim Reader As New ConfigManager
      20. ' Reader.ReadLine("Datei.txt", "1")
      21. ' MsgBox(Reader.Zeileninhalt)
      22. #End Region
      23. #Region "Zeilensetzer"
      24. Public Sub ChangeLine(ByVal DateiPfad As String, ByVal line__1 As UInteger, ByVal newvalue As String)
      25. Try
      26. Dim str As New StreamReader(DateiPfad)
      27. Dim lines As New List(Of String)()
      28. While Not str.EndOfStream
      29. lines.Add(str.ReadLine())
      30. End While
      31. str.Close()
      32. If lines.Count > line__1 Then
      33. lines(CInt(line__1) - 1) = newvalue
      34. End If
      35. Dim strw As New StreamWriter(DateiPfad)
      36. For Each Line__2 As String In lines
      37. strw.WriteLine(Line__2)
      38. Next
      39. strw.Flush()
      40. strw.Close()
      41. Catch
      42. End Try
      43. End Sub
      44. 'USAGE
      45. ' Dim Writer As New ConfigManager
      46. ' ConfigManager.ChangeLine("Datei.txt", Zeile, NeuerInhalt)
      47. #End Region
      48. End Class



      Wie man die 2 Funktionen benutzt, steht drunter :)
      Spart viel Code und Arbeit.
      Ist nichts besonderes aber nützlich finde ich.

      Mfg. René