FTP String Download in ListView

  • VB.NET
  • .NET (FX) 4.0

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

    FTP String Download in ListView

    Moin Leute :)

    Ich habe Folgendes Problem ich Versuche die Komplet Datei auszulesen aber es wird nur der 1 Eintrag eingetragen von den web String.

    VB.NET-Quellcode

    1. wb.DownloadStringAsync(New Uri("http://mariomo21.bplaced.net/www/Radio/DJRadio.txt"))


    VB.NET-Quellcode

    1. Private WithEvents wb As New Net.WebClient
    2. Private Sub wb_DownloadStringCompleted(sender As Object, e As Net.DownloadStringCompletedEventArgs) Handles wb.DownloadStringCompleted
    3. Try
    4. Dim values As String = e.Result
    5. For Each l In values.Split(vbNewLine)
    6. Dim arrDatensatz As String() = l.Split("|")
    7. Dim item As New ListViewItem(arrDatensatz(0))
    8. item.SubItems.Add(arrDatensatz(1))
    9. item.SubItems.Add(arrDatensatz(2))
    10. item.SubItems.Add(arrDatensatz(3))
    11. item.ImageIndex = ImageList1.Images.Count
    12. ListView1.Items.Add(item)
    13. ImageList1.Images.Add(New System.Drawing.Bitmap(New IO.MemoryStream(New System.Net.WebClient().DownloadData(arrDatensatz(2).ToString))))
    14. Next
    15. Catch ex As Exception
    16. End Try
    17. End Sub


    Danke im Voraus :)

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Marvinware schrieb:

    FTP


    Trifft hier doch garnet zu, du laedst den Text doch via HTTP.

    Option Strict solltest du auch mal auf On stellen.


    Es kann dir so auch nur ein Item hinzugefuegt werden, die Schleife durchlaueft auch nur 1 mal. Das liegt daran das du mit vbnewline(CRLF) splittest, dein textdokument aber, beinhaltet keine CRLF sondern nur LF(vbLf) fuer Zeilenumbrueche.
    And i think to myself... what a wonderfuL World!
    Ich wuerde die Sache grundliegend anders angehen. Eine Textdatei als Datenbank, naja. Fuer die ersten versuche OK, aber ich wuerde eine MySQL nutzen, dazwischen ein PHP-Script, welches die Daten aus der DB "hohlt" und als massgeschneidertes XML rausgibt. VB-Seitig eine DataGridView schoen mit Dataset und BindingSource.
    And i think to myself... what a wonderfuL World!
    @Marvinware Hast Du Dir mal angesehen, welchen Text Du da downloadest?

    Ist es sinnvoll, die Operationen, die Du durchzuführen versuchst, überhaupt durchzuführen?
    =====
    Nimm mal statt des ListView eine ListBox und häng dort die Einträge dran:

    VB.NET-Quellcode

    1. Dim arrDatensatz As String() = l.Split("|"c)
    2. Me.ListBox1.Items.AddRange(arrDatensatz)
    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!

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

    Marvinware schrieb:

    aber es wird dann nicht das ziel erreicht was ich vorhabe.
    Was hast Du denn vor?
    Schreib bitte ein paar mehr Worte als

    Marvinware schrieb:

    Ich Versuche ein Radio Explorer zu machen.

    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!

    C#-Quellcode

    1. private void Form1_Load(object sender, EventArgs e)
    2. {
    3. WebClient webc = new WebClient();
    4. webc.DownloadFileAsync(new Uri("http://mariomo21.bplaced.net/www/Radio/DJRadio.txt"), "meinedatei.txt");
    5. }
    6. private void button1_Click(object sender, EventArgs e)
    7. {
    8. string[] txtfilearray = System.IO.File.ReadAllLines("meinedatei.txt");
    9. foreach (string zeile in txtfilearray)
    10. {
    11. string[] einezeile = zeile.Split('|');
    12. ListViewItem lwitem = new ListViewItem(einezeile[0]);
    13. lwitem.SubItems.Add(einezeile[1]);
    14. lwitem.SubItems.Add(einezeile[2]);
    15. lwitem.SubItems.Add(einezeile[3]);
    16. listView1.Items.Add(lwitem);
    17. }
    18. }


    und nicht vergessen, den webclient closen oder am besten in eine using reinpacken
    Hier könnte meine Signatur stehen.

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

    mox schrieb:

    am besten in eine using reinpacken
    Aber nur, wenn nicht DownloadFileAsync oder andere asynchrone Methoden verwendet werden!
    Sonst wunderst Du Dich, dass nix ankommt. ;)
    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!