Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [VB .NET] Controllare fine stringa stringreader

    Attraverso uno stringreader dovrei popolare una tabella...memorizzo nello stringreader una string e le righe sono separate dai vbcrlf.
    Quindi se nello stringreader c'è:
    codice:
    prova 
    prova1
    nella tabella devono comparire due righe, una chiamata "prova" e l'altra "prova1".
    Per fare ciò, uso questo codice:
    codice:
            Do Until p = ""
                p = leggi.ReadLine
                cella.Text = p
                riga.Cells.Add(cella)
                Table1.Rows.Add(riga)
            Loop
    In pratica, continua a leggere finché la variabile "p" non è uguale a "".
    Ovviamente il problema è quello: con questo codice non viene aggiunta nessuna riga.
    come posso farlo leggere fino alla fine del flusso come con la proprietà "EndOfStream" dello streamreader?
    Grazie in anticipo
    Iscrivetevi su:
    www.studentsmeeting.forumitalian.com!! E' gratis e utile!
    C'è anche la sezione "compiti"!!!!!!!!!

  2. #2
    codice:
            Do Until leggi.EndOfStream
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    no...l'avrei gia usato e poi nella mia domanda c'è scritto che quella proprietà non c'è per il controllo stringreader.....
    Iscrivetevi su:
    www.studentsmeeting.forumitalian.com!! E' gratis e utile!
    C'è anche la sezione "compiti"!!!!!!!!!

  4. #4
    Hai ragione, è che avevo letto StreamReader...
    codice:
            p = leggi.ReadLine()
            Do Until p Is Nothing
                cella.Text = p
                riga.Cells.Add(cella)
                Table1.Rows.Add(riga)
                p = leggi.ReadLine
            Loop
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Ora mi aggiunge soltanto la seconda riga del flusso...uso questo codice per ottenere il file e per fargli aggiungere una riga per ognuna presente nel flusso.
    codice:
            Dim cella As New System.Web.UI.WebControls.TableCell
            Dim riga As New System.Web.UI.WebControls.TableRow
            Dim leggi As New IO.StringReader(lettura.DownloadString(miastringa))
            Dim p As String = leggi.ReadLine
            Do Until p Is Nothing
                cella.Text = p
                riga.Cells.Add(cella)
                Table1.Rows.Add(riga)
                p = leggi.ReadLine
            Loop
    Iscrivetevi su:
    www.studentsmeeting.forumitalian.com!! E' gratis e utile!
    C'è anche la sezione "compiti"!!!!!!!!!

  6. #6
    Adesso ho convertito lo stringreader in streamreader, di modo che posso usare l'"endofstram", che però non va!!
    controlla:
    codice:
            Dim cella As New System.Web.UI.WebControls.TableCell
            Dim riga As New System.Web.UI.WebControls.TableRow
            Dim leggi As New IO.StringReader(lettura.DownloadString("ftp://ftp.uploadgenius.com/uploadgenius.com/Accounts/Real/SHJWYWG178/" & Label2.Text & "/lstfilelog.txt"))
            Dim memoryStream As New MemoryStream()
            Dim streamWriter As New StreamWriter(memoryStream)
            streamWriter.Write(leggi.ReadToEnd)
            streamWriter.Flush()
            memoryStream.Position = 0
            Dim streamreader As New StreamReader(memoryStream)
            Do Until streamreader.EndOfStream
                cella.Text = streamreader.ReadLine
                riga.Cells.Add(cella)
                Table1.Rows.Add(riga)
            Loop
    Ho provato a scrivere in una textbox per vedere se i dati venivano effettivamente scritti e il risultato c'era! il problema adesso sta nel ciclo DO UNTIL..
    Iscrivetevi su:
    www.studentsmeeting.forumitalian.com!! E' gratis e utile!
    C'è anche la sezione "compiti"!!!!!!!!!

  7. #7
    mi correggo...quella aggiunta è l'ultima riga, non la seconda...
    Iscrivetevi su:
    www.studentsmeeting.forumitalian.com!! E' gratis e utile!
    C'è anche la sezione "compiti"!!!!!!!!!

  8. #8
    codice:
                riga.Cells.Add(cella.Text)
                Table1.Rows.Add(riga.Text)
    Tu vieni da VB6, vero?
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #9
    no, non posso: non si puo' convertire il tipo string in system.web.ui.webcontrols.tablecell
    Iscrivetevi su:
    www.studentsmeeting.forumitalian.com!! E' gratis e utile!
    C'è anche la sezione "compiti"!!!!!!!!!

  10. #10
    Ops, non avevo letto bene e avevo capito che era una textbox o qualcosa del genere (anche perché ASP.NET viene trattato in un altro sottoforum).
    Allora:
    codice:
            Dim cella As System.Web.UI.WebControls.TableCell
            Dim riga As New System.Web.UI.WebControls.TableRow
            Dim leggi As New IO.StringReader(lettura.DownloadString("ftp://ftp.uploadgenius.com/uploadgenius.com/Accounts/Real/SHJWYWG178/" & Label2.Text & "/lstfilelog.txt"))
            Dim memoryStream As New MemoryStream()
            Dim streamWriter As New StreamWriter(memoryStream)
            streamWriter.Write(leggi.ReadToEnd)
            streamWriter.Flush()
            memoryStream.Position = 0
            Dim streamreader As New StreamReader(memoryStream)
            Do Until streamreader.EndOfStream
                cella = New System.Web.UI.WebControls.TableCell()
                cella.Text = streamreader.ReadLine
                riga.Cells.Add(cella)
                Table1.Rows.Add(riga)
            Loop
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.