Eigenes 'Archivdingens'

  • VB.NET

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

    Eigenes 'Archivdingens'

    Hey ihr :D

    Ich suche nach einer Möglichkeit, mehrere Dateien in einer einzigen Datei zu verstauen.
    Meine Idee war folgende:

    VB.NET-Quellcode

    1. Dim FileString As String = IO.File.ReadAllText("File")
    2. IO.File.WriteAllText(":Marke1:", "File")
    3. IO.File.WriteAllText(FileString, "File")
    4. IO.File.WriteAllText(":Marke1:", "File")


    Um dann zu versuchen die Datei so zu extrahieren:

    VB.NET-Quellcode

    1. Dim File As String = IO.File.ReadAllText("FileVonOben")
    2. Dim Out As Array = File.Split(":Marke1:")
    3. IO.File.WriteAllText(Out(1), "File")


    Das funktioniert allerdings nicht (warum kann ich mir nur halb erklären,
    denn wenn ich die Datei mit Editor öffne, alles kopiere, die Datei schließe und dann eine neue mit dem
    Zwischenablageninhalt erstelle geht das. Warum also nicht so ?

    LG
    Nino
    "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

    Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!
    Du möchtest einfach nur mehrere Strings hintereinander in einer Datei Speichern?
    Dann nimm den BinaryReader/BinaryWriter:

    VB.NET-Quellcode

    1. Dim File As New FileStream("Pfad", FileMode.Open)
    2. Dim Reader As New BinaryReader(File)
    3. Dim Str1 As String = Reader.ReadString
    4. Dim Str2 As String = Reader.ReadString
    5. Dim Str3 As String = Reader.ReadString
    6. Dim Str4 As String = Reader.ReadString
    7. ...


    Umgekehrt zum Schreiben einfach den BinaryWriter, und statt der ReadString-Methode halt die WriteString-Methode. Wichtig ist nur, dass du die Strings in der gleichen Reihenfolge schreibst und liest.
    @Manawyrm

    Könntest du das genauer erklären ?
    Ich versteh nur die Hälfte :D
    "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

    Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!
    Die Überlegung mit dem Trennzeichen wäre eig. gar nicht so falsch.


    Besser wäre es aber wohl, am Ende der Datei eine Liste anzuhängen, in der Steht: Datei1-FängtAnPosition:12,EndetAnPosition:20004;Datei2-FängtAnPosition:20005,EndetAnPosition:20090

    Natürlich nur ungefähr so.

    Stichwörter für eine MSDN Suche wären dann Base64, GZIP und MemoryStreams.

    Gruß,
    Manawyrm

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manawyrm“ ()