MP3 in Base 64 String konvertieren und in (Rich)Textbox anzeigen lassen

  • VB.NET

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

    MP3 in Base 64 String konvertieren und in (Rich)Textbox anzeigen lassen

    Hallo bin grad dabei n TCP programm zu schreiben das mir ne MP3 Datei in einen Base64String konvertiert, verschickt und dann wieder in eine MP3 Datei konvertiert um diese dann auf dem anderen PC abzuspielen...
    Das konvertieren und schicken hab ich hinbekommen aber mit dem öffnen des Base64String in eine (Rich)Textbox nicht.
    Ich hoffe ihr könnt mir helfen...
    Ja ganz vergessen ...

    VB.NET-Quellcode

    1. 'Dim listen As New TcpListener(65000)
    2. Dim client As TcpClient
    3. 'Dim Nachricht As String = ""
    4. Dim ip As String
    5. Dim ftp As New Net.WebClient
    6. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    7. ' load file into a byte array
    8. Dim data As Byte() = File.ReadAllBytes(TextBox1.Text)
    9. ' convert the byte array to base64
    10. Dim str As String = Convert.ToBase64String(data)
    11. ' write the string to a file
    12. File.WriteAllText(My.Computer.FileSystem.CurrentDirectory & "\Audio_Base64String.txt", str)
    13. Timer1.Start()
    14. End Sub
    15. Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
    16. If My.Computer.FileSystem.FileExists(My.Computer.FileSystem.CurrentDirectory & "\Audio_Base64String.txt") Then
    17. Dim Reader As New StreamReader(My.Computer.FileSystem.CurrentDirectory & "\Audio_Base64String.txt")
    18. RichTextBox1.Text = Reader.ReadToEnd()
    19. Reader.Close()
    20. 'RichTextBox1.Text = My.Computer.FileSystem.ReadAllText(My.Computer.FileSystem.CurrentDirectory & "\Audio_Base64String.txt")
    21. Timer1.Stop()
    22. End If
    23. End Sub
    24. Private Sub RichTextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles RichTextBox1.TextChanged
    25. client = New TcpClient(TextBox2.Text, 65000)
    26. Dim writer As New StreamWriter(client.GetStream())
    27. writer.Write(RichTextBox1.Text)
    28. writer.Flush()
    29. End Sub
    Ich meinte:

    VB.NET-Quellcode

    1. Dim client As TcpClient
    2. 'Dim Nachricht As String = ""
    3. Dim ip As String
    4. Dim ftp As New Net.WebClient
    5. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    6. ' load file into a byte array
    7. Dim data As Byte() = File.ReadAllBytes(TextBox1.Text)
    8. ' convert the byte array to base64
    9. Dim str As String = Convert.ToBase64String(data)
    10. ' write the string to a file
    11. File.WriteAllText(My.Computer.FileSystem.CurrentDirectory & "\Audio_Base64String.txt", str)
    12. RichTextBox1.Text=str
    13. client = New TcpClient(TextBox2.Text, 65000)
    14. Dim writer As New StreamWriter(client.GetStream())
    15. writer.Write(str)
    16. writer.Flush()
    17. End Sub

    RW2003 schrieb:

    das mir ne MP3 Datei in einen Base64String konvertiert, verschickt und dann wieder in eine MP3 Datei konvertiert um diese dann auf dem anderen PC abzuspielen...
    Machma
    das mir ne MP3 Datei verschickt um diese dann auf dem anderen PC abzuspielen...
    Ohne Base64
    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!
    OK kannst du noch schreiben wie die gegenstelle aussehen muss?
    habs so:

    VB.NET-Quellcode

    1. Dim listen As New TcpListener(65000)
    2. Dim client As TcpClient
    3. client = listen.AcceptTcpClient()
    4. Dim read As New BinaryReader(client.GetStream)
    5. While read.PeekChar > -1
    6. Nachricht = Nachricht + Convert.ToChar(read.Read()).ToString
    7. End While
    8. If Not Nachricht = "" Then
    9. TextBox1.Text = Nachricht
    10. End If

    aber was soll ich bei Nachricht convert.toChar... schreiben? Oder kann ich das au weg lassen?

    RW2003 schrieb:

    Oder kann ich das au weg lassen?
    Sende und empfange Bytes, nicht aber Strings.
    Sieh Dir die entsprechenden Überladungen der Befehle an.
    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!
    Man braucht nicht immer einen BinaryReader/Writer! Jeder Stream hat eine Write und eine Read Überladung welche ein Byte-Array, einen Offset und die Anzahl von Bytes entgegen nimmt. Von dem her verstehe ich nicht wie man auf Base64 etc. kommt. Lies die Datei mit einen Puffer von von mir aus 50kb aus, schreib den Puffern in den Stream, lies die nächsten 50kb. Beim Empfänger liest du immer 50kb und schreibst diese wieder in eine Datei. Fertig. Und was soll es bringen eine Datei in eine Textbox zu packen? Das sind doch nichts als Rohdaten. Da kannste nix lesen.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    msdn.microsoft.com/de-de/libra…tream.read(v=vs.110).aspx
    msdn.microsoft.com/de-de/libra…ream.write(v=vs.110).aspx

    Unten ist Beispielcode.

    Ansonsten musst du genau sagen was du nicht verstehst.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.

    RW2003 schrieb:

    n bissle erklären
    Du solltest ganz schnell lernen, Dich mit den relevanzen Informationen zu versorgen.
    1. MSDN - die Microsoft-Hilfe.
    2. Google.
    3. Forum.
    Du musst nicht wegen jedem Windchen das Forum befragen, wenn Du nicht mal weißt, was Microsoft selbst dazu sagt.
    Tipp bei Frau Google ein: msdn bytes senden. Dann suchst Du Dir das passende raus.
    Feddich. :D
    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!