Bestimmter Text in Datei Suchen und Ersetzen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Bestimmter Text in Datei Suchen und Ersetzen

    Hallo Zusammen,

    Durch die Super Tipps und Tricks von euch in den Letzten paar Tagen bin ich sehr gut mit einem Tool vorangekommen. nun hapert es aber an einer kleinen Funktion -.-

    Funktion:
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Function Read_MakeFile_DB() As String
    2. Dim Passwort As String = Nothing
    3. Dim DateiInhalt() As String = File.ReadAllLines("db_Makefile")
    4. Dim Index As Integer
    5. For Each line As String In DateiInhalt
    6. If CBool(line.IndexOf("SVN_VERSION =")) Then
    7. Index = line.IndexOf("SVN_VERSION =") + 13
    8. Passwort = line.Substring(Index, line.IndexOf(Chr(10), Index + 1) - Index) 'Jetzt sollte vom Index bis zum Ende der Zeile gelesen werden.
    9. Return Passwort
    10. Exit Function
    11. End If
    12. Next
    13. Return Passwort
    14. End Function


    Datei die er ausliest:
    Spoiler anzeigen

    Quellcode

    1. ​MAKE = gmake
    2. CC = g++
    3. INCDIR =
    4. LIBDIR += -L/usr/local/lib/mysql
    5. BINDIR = ..
    6. OBJDIR = .obj
    7. GCC_VERSION = 4
    8. BSD_VERSION = $(shell uname -v 2>&1 | cut -d' ' -f2 | cut -d'.' -f1)
    9. SVN_VERSION = 1.4_build_on_mainline_released_32
    10. $(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi)
    11. TARGET = $(BINDIR)/db_r$(SVN_VERSION)
    12. CFLAGS = -g -Wall -O2 -pipe -fno-rtti -fno-exceptions -pthread -D_THREAD_SAFE
    13. ifeq ($(GCC_VERSION), 4)
    14. CFLAGS += -mtune=i686
    15. else
    16. CFLAGS += -mcpu=i686
    17. endif
    18. # boost
    19. INCDIR += -I../../../Extern/include/boost
    20. LIBDIR += -L../../libthecore/lib -L../../libsql -L../../libpoly -L../../libgame/lib
    21. # Extern
    22. INCDIR += -I../../../Extern/include
    23. LIBDIR += -I../../../Extern/lib
    24. # Project Library
    25. INCDIR += -I/usr/local/include


    In dieser Datei sollte er nach "SVN_VERSION =" suchen, und mit den Text dahinter zurück geben. leider ist immer nur ein Leerer String zurück gekommen.

    Leider kann ich auch nicht sagen nimm zeile 11 da ich mehrere dateien habe die das SVN an einer anderen stelle haben.

    Nun die Frage: Wie könnte ich dies am einfachsten Lösen? Ich müsste den String hinter "SVN_VERSION =" in eine TextBox geben wo ich es bearbeiten könnte und dieser String wider an den richtigen blatz schreiben.

    Danke und Grüsse Achim
    Du willst alles in hinter dem bestimmten Key?

    VB.NET-Quellcode

    1. If txt.StartsWith("key") Then
    2. Return txt.Replace("key", "")
    3. End if
    »There's no need to "teach" atheism. It's the natural result of education without indoctrination.« — Ricky Gervais