TCP Dateiübertragung

  • VB.NET

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

    TCP Dateiübertragung

    Hi Leute,

    Ich hab jetzt noch eine Frage

    Und zwar:

    Ich versuche ein Programm zu entwickeln für mich und meine Freunde(Hausaufgaben austauschen)
    Den Chat habe ich fertig.

    Nun gibt es das nächste Problem, die Dateiübertragung.

    Ich wollte es eigentlich nicht über FTP machen, was zwar einfacher ist aber nen webspace benötigt.

    Daher kam mit TCP in den Sinn

    Hättet ihr ne Idee wie ich Dateien damit übertragen kann.

    Ich will damit nur ein paar Bilder oder powerpoints übertragen können, also keine großen Dateien.

    Ich gehe jetzt schlafen also kann ich leider nicht Antworten aber morgen früh schaue ich direkt in den thread

    Danke im voraus
    Und
    Frohe weihnachten im Nachhinein
    soweit ich mich schlau hatte machen können, kann man mit der tcp methode nur strings/integer versenden. die methode udp ist dafür eher geeignet. damit kann man datensätze/pakete senden, die der client dann auswertet und wiedergibt.
    Hi ich kann dir ja mal meine Methode vorstellen ist sicher nicht die beste funktioniert aber super :)

    Datei Senden:

    VB.NET-Quellcode

    1. Dim buffer() As Byte = File.ReadAllBytes(SendFilePath) 'SendFilePath ist der Pfad der zu sendenden Datei
    2. streamw.WriteLine(Convert.ToBase64String(buffer))
    3. streamw.Flush()


    Datei Empfangen:

    VB.NET-Quellcode

    1. Dim buffer() As Byte = Convert.FromBase64String(para) ' Para ist bei mir das was empfangen wird
    2. File.WriteAllBytes(SavePath, buffer) ' SavePath ist der Pfad wohin gespeichert werden soll


    Hoffe ich konnte dir helfen
    Mfg Alex

    backtothetoast schrieb:

    soweit ich mich schlau hatte machen können, kann man mit der tcp methode nur strings/integer versenden.
    stimmt nicht.

    Bei TCP erhält man letztendlich einen NetworkStream und kann da reinschreiben, was man will. Übertragen wird eine endlose Folge von Bytes, und prinzipiell würde das sehr schön mit Dateien harmonisieren, die werden ja auch als Stream gelesen und geschrieben - als FileStream.

    Hauptaufgabe wird sein, ein Befehlsprotokoll zu erschaffen, bei dem Chat-Nachrichten von Befehlen zur Dateiübertragung und von Datei-Daten unterschieden werden. vlt. auch eine zusätzliche Verbindung schaffen, damit das Chatten nicht durch die Dateiübertragung blockiert ist.