Comparar archivos que no funcionan según lo previsto

hi chicos, alguien podría explicarme por qué esto no funciona.

Básicamente tengo que enviar archivos de texto llamados Libros y NewBooks ...

Los archivos de texto se completan a partir de una solicitud web y la información se analiza en los archivos de texto ... cuando inicio el programa Los libros y los libros nuevos son idénticos y prácticamente una copia el uno del otro.

as solicitudes web @more se realizan para actualizar el archivo de texto de NewBooks y cuando las comparo si hay una línea en NewBooks que no está en Books, agrega esa línea a un tercer archivo de texto llamado myNewBooks. Ahora mi código inicial que mostraré aquí funciona como esperaba

Dim InitialBooks = File.ReadAllLines("Books.json")
    Dim TW As System.IO.TextWriter
    'Create a Text file and load it into the TextWriter 
    TW = System.IO.File.CreateText("myNewBooks.JSON")

    Dim NewBooks = String.Empty
    Using reader = New StreamReader("NewBooks.json")
        Do Until reader.EndOfStream
            Dim current = reader.ReadLine
            If Not InitialBooks.Contains(current) Then 
                NewBooks = current & Environment.NewLine

                TW.WriteLine(NewBooks)
                TW.Flush()
                'Close the File 
            End If
        Loop
    End Using
    TW.Close() : TW.Dispose()

pero porque parte de la cadena en las líneas de mi archivo de texto contiene una url que a veces encuentro el mismo libro con una url diferente ... Obtuve entradas duplicadas de libros porque la url era la única diferencia. Así que pensé que dividiría la cadena antes de la url para comparar el título, la descripción y la región ... fyi, una línea en mis archivos de texto se parece a esto:

{"Título": "Mi título aquí", "Descripción": "Mi descripción aquí", "Región": "Mi región aquí", "Url": "Mi url aquí", "Imagen": "Mi imagen aquí "};

Así que un compañero de hoy me ayudó a descubrir cómo dividir mi línea para que se vea más así:

{"Título": "Mi título aquí", "Descripción": "Mi descripción aquí", "Región": "Mi región aquí", "Url"

que es genial, pero ahora, cuando lo comparo, no veo que la primera línea contiene la línea dividida y no entiendo por qué ... aquí está el código después de que se modificó.

Dim InitialBooks = File.ReadAllLines("Books.json")
    Dim TW As System.IO.TextWriter
    'Create a Text file and load it into the TextWriter 
    TW = System.IO.File.CreateText("myNewBooks.JSON")

    Dim NewBooks = String.Empty
    Using reader = New StreamReader("NewBooks.json")
        Do Until reader.EndOfStream
            Dim current = reader.ReadLine
            Dim splitAt As String = """Url"""
            Dim index As Integer = current.IndexOf(splitAt)
            Dim output As String = current.Substring(0, index + splitAt.Length)
            If Not InitialBooks.Contains(output) Then 
                NewBooks = current & Environment.NewLine

                TW.WriteLine(NewBooks)
                TW.Flush()
                'Close the File 
            End If
        Loop
    End Using
    TW.Close() : TW.Dispose()

¡Tu sabiduría sería apreciada!

Respuestas a la pregunta(1)

Su respuesta a la pregunta