Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - VB.NET - Leggere o scrivere in una determinata riga
Forum - C# / VB.NET - VB.NET - Leggere o scrivere in una determinata riga

Avatar
Pinnolo (Normal User)
Rookie


Messaggi: 28
Iscritto: 15/03/2008

Segnala al moderatore
Postato alle 20:23
Martedė, 26/08/2008
Questo topic č stato chiuso dal moderatore

Questa domanda la posi giā tempo fa, ma a causa di problemi personali non ho pių avuto il tempo di controllare eventuali risposte, inoltre credo che la discussione sia stata ormai cancellata, dato che non ho trovato nulla nč con la ricerca nč visionando le prime 20 pagine del forum (una faticaccia:asd:)

Allora, il quesito č questo:
vorrei che il mio programma preso un file di testo qualsiasi, mi legga una determinata riga,ad esempio il file di testo contiene la scritta:
"PieroTofy č
un gran bel sito
per imparare a programmare"

vorrei che il programma alla pressione di un determinato tasto mi legga SOLTANTO la 2° riga, quindi -un gran bel sito-


Analogamente vorrei che mediante la pressione di un altro tasto mi scriva sullo stesso file di testo una frase ad una determinata riga, ad esempio riferendomi a quanto detto prima, in un file di testo contenente:
"PieroTofy č
un gran bel sito
per imparare a programmare"

vorrei che alla terza riga mi scriva -di programmazione", affinchč il risultato sia:
"PieroTofy č
un gran bel sito
di programmazione"


Spero di essere stato chiaro.

Grazie per l' attenzione, Pinnolo

PM
Avatar
Overflow (Normal User)
Expert


Messaggi: 334
Iscritto: 11/01/2008

Segnala al moderatore
Postato alle 22:20
Martedė, 26/08/2008
Ti posto il codice per l'esempio che hai detto.
Codice sorgente - presumibilmente VB.NET

  1. Imports System
  2. Imports System.IO
  3. Imports Microsoft.VisualBasic
  4.  
  5. Public Class Form1
  6.  
  7.  
  8.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  9.  
  10.         Dim stream As FileStream
  11.         Dim rstream As StreamReader
  12.         Dim wstream As StreamWriter
  13.         Dim lines(10) As String
  14.         Dim i, y As Integer
  15.  
  16.         i = 0
  17.  
  18.         stream = New FileStream("C:\prova.txt", FileMode.Open, FileAccess.ReadWrite)
  19.         rstream = New StreamReader(stream)
  20.         wstream = New StreamWriter(stream)
  21.  
  22.  
  23.         'leggo il file e salvol ongi linea nell'array lines
  24.         While Not rstream.EndOfStream
  25.             lines(i) = rstream.ReadLine()
  26.             i = i + 1
  27.         End While
  28.         'rstream.Close()
  29.  
  30.         'sostituisco il 3o elemento dell'array con la frase di programmazione
  31.         lines(2) = "di programmazione"
  32.  
  33.         'scrivo dall'inizio del file
  34.         stream.Position = 0
  35.         For y = 0 To i - 1
  36.             wstream.WriteLine(lines(y))
  37.         Next
  38.  
  39.         wstream.Close()
  40.         stream.Close()
  41.     End Sub
  42. End Class



lines č un array che contiene le righe del file, poi sostituisco il 3° elemento del vettore con "di programmazione" e riscrivo nel file l'array aggiornato.

Ultima modifica effettuata da Overflow il 26/08/2008 alle 22:27
PM
Avatar
Pinnolo (Normal User)
Rookie


Messaggi: 28
Iscritto: 15/03/2008

Segnala al moderatore
Postato alle 23:55
Martedė, 26/08/2008
Testo quotato

Postato originariamente da Overflow:

Ti posto il codice per l'esempio che hai detto.
Codice sorgente - presumibilmente Plain Text

  1. codice...



lines č un array che contiene le righe del file, poi sostituisco il 3° elemento del vettore con "di programmazione" e riscrivo nel file l'array aggiornato.

Grazie mille, sapevo di dover usare streamreader e streamwriter, ma mi bloccavo in un punto.

Ancora grazie, funziona alla perfezione.

PM