2 Texte vergleichen und unterschiede filtern !?

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    2 Texte vergleichen und unterschiede filtern !?

    Hi, kann mir jemand helfen? Ich möchte ein Programm schreiben in dem man zwei Texte miteinander vergleicht und die unterschiede in eine dritte .txt schreibt !?
    Er soll es ganz normal vergleichen und das "Ungleiche" markieren. Ich bin noch ein anfänger, muss dies aber für meinen Ausbilder erledigen.

    Bsp: 1. Text: Hallo, wie geht es
    2. Text: Hallo, ie geht es

    "ie geht es" soll in diesem Fall markiert sein.

    Oder wenn ein Wort zusätzlich drin ist soll es markiert werden.

    Bsp: 1. Text: Hallo, wie geht es.
    2. Text: Hallo, wie geht es dir.

    (Nur dir markieren.)

    Das Programm soll den 1. Text immer in Ruhe lassen und nur im 2. Text markieren.

    ich habe es bis jetzt so gemacht, das er die 2 textdatein ausliest und in 2 Richtextboxen schreibt !
    (Das ist nicht zwingend notwendig, es reicht auch wenn er nur die .txt datein vergleicht !)


    Mein Code:

    Quellcode

    1. Public Class Form1
    2. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    3. Dim fileReader As System.IO.StreamReader
    4. fileReader =
    5. My.Computer.FileSystem.OpenTextFileReader("C:\Julian Laptop\Hallo.txt")
    6. Dim stringReader As String
    7. stringReader = fileReader.ReadToEnd()
    8. RichTextBox1.Text = (stringReader)
    9. Dim fileReader1 As System.IO.StreamReader
    10. fileReader1 =
    11. My.Computer.FileSystem.OpenTextFileReader("C:\Julian Laptop\Hallo1.txt")
    12. stringReader = fileReader1.ReadToEnd()
    13. RichTextBox2.Text = (stringReader)
    14. End Sub
    15. Private Sub RichTextBox1_TextChanged(sender As Object, e As EventArgs) Handles RichTextBox1.TextChanged
    16. End Sub
    17. End Class



    Danke schon mal im voraus.


    Ps: Ich hatte vll. an eine Loop schleife gedacht habe soetwas allerdings noch nie benutz !

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Julian95“ ()

    Julian95 schrieb:

    Er soll es ganz normal vergleichen und das "Ungleiche" markieren. Ich bin noch ein anfänger, muss dies aber für meinen Ausbilder erledigen
    An sich ist so ein Textvergleich nicht trivial: da ich annehme dass dein Ausbilder Dich nicht schikanieren will, reicht es wohl aus den 2. String Buchstaben für Buchstaben mit dem ersten zu vergleichen und Abweichungen wegzuschreiben.

    Überleg Dir dazu immer eine Methode, wie Du es manuell machen würdest und schreib Dir das in einer Art Pseudocode auf. Das setzt du dann im Programm nur um.

    Anmerkung: mit der Methode ReadAllText in der Klasse IO.File machst Du Dir das Einlesen leichter:

    VB.NET-Quellcode

    1. dim txtOriginal as string= IO.File.ReadAllText("C:\Julian Laptop\Hallo.txt")
    2. dim txtVergleich as string=IO.File.ReadAllText("C:\Julian Laptop\Hallo1.txt")
    Vielleicht so:
    Lies die Zeilen einzeln ein: ReadAllLines(), splitte sie bei den Leerzeichen / Satzzeichen und vergleiche die Wörter einzeln.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Julian95 schrieb:

    aber wie vergleiche ich sie denn
    Entsprechend Deiner Regeln oder den Regeln Deines Chefs.
    Die musst Du erst mal klar herausarbeiten.
    Benutze dazu auch mal die Suchmaschinen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!