Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicitÓ e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Lettura di un file di configurazione in vb.net
Forum - C# / VB.NET - Lettura di un file di configurazione in vb.net

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Antivirusvivente (Normal User)
Rookie


Messaggi: 40
Iscritto: 26/07/2009

Segnala al moderatore
Postato alle 17:22
Giovedý, 10/09/2009
Ciao a tutti, sto concludendo la versione 1.1 del mio programma per vedere la TV in streaming, per˛ avendo creato un men¨ opzioni, mi chiedevo se era possibile scrivere in un documento .inf tutte le relative informazioni, per scriverle ci sono, infatti appena un utente modifica delle opzioni e clicca su salva, in questo file vengono rispettivamente scritti determinati numeri che ricordano l'opzione.
Ora per˛, quando avvio il programma, vorrei che appunto queste opzioni vengano lette. Come posso fare ci˛?
Le opzioni vengono scritte in 3 linee rispettivamente
1 linea da 0 a 7
2 linea da 0 a 1
3 linea da 0 a 1

Per ogni numero viene appunto determinata l'opzione

Ringrazio anticipatamente chi mi saprÓ aiutare


MyLittleSuite Ready 2 Arrive - www.aicc.altervista.org/MLP
PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 21:15
Giovedý, 10/09/2009
Usa un IO.StreamReader(percorsofile), in particolare la funzione ReadLine.
Ho buttato gi¨ qualche riga senza IDE, tanto per darti un'idea.
Codice sorgente - presumibilmente VB.NET

  1. Dim R as new IO.Streamreader(percorsofiledaleggere)
  2. Dim Opzioni(2) as int16
  3. For X as byte=0 to 2
  4. opzioni(x)=r.readline
  5. Next X
  6. r.close()


Ultima modifica effettuata da ruggy94 il 10/09/2009 alle 21:58


"Se vuoi che una funzione di un programma non venga mai trovata, descrivila nella documentazione"
PM Quote
Avatar
Hast (Normal User)
Rookie


Messaggi: 52
Iscritto: 09/04/2009

Segnala al moderatore
Postato alle 21:59
Giovedý, 10/09/2009
Volendo potresti usare invece del file inf un app.config oppure creare un file txt e leggere le righe oppure creare un file binario da cui leggere le righe.
Con l'app.config che gestisci come un xml usi la classe ConfigurationManager.
Con il file txt o il binario invece crei un filestream e poi leggi direttamente le righe.
Con ReadLine nel txt e ReadInt32, ReadString ecc nel binario.

PM Quote
Avatar
Antivirusvivente (Normal User)
Rookie


Messaggi: 40
Iscritto: 26/07/2009

Segnala al moderatore
Postato alle 22:30
Giovedý, 10/09/2009
Perfetto risolto, ora per˛ ho 1 altro problemuccio, in pratica ogni qual volta che salvo le impostazioni, non viene sovrascritta linea 1, 2 e 3, ma viene aggiunta una nuova linea.
Posto il codice che ho adottato

Codice sorgente - presumibilmente VB.NET

  1. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  2.         If ComboBox1.SelectedIndex = 0 Then
  3.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "0" & vbCrLf)
  4.         ElseIf ComboBox1.SelectedIndex = 1 Then
  5.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "1" & vbCrLf)
  6.         ElseIf ComboBox1.SelectedIndex = 2 Then
  7.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "2" & vbCrLf)
  8.         ElseIf ComboBox1.SelectedIndex = 3 Then
  9.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "3" & vbCrLf)
  10.         ElseIf ComboBox1.SelectedIndex = 4 Then
  11.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "4" & vbCrLf)
  12.         ElseIf ComboBox1.SelectedIndex = 5 Then
  13.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "5" & vbCrLf)
  14.         ElseIf ComboBox1.SelectedIndex = 6 Then
  15.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "6" & vbCrLf)
  16.         ElseIf ComboBox1.SelectedIndex = 7 Then
  17.             IO.File.WriteAllText("C:\MyLittlePlayer\settings.inf", "7" & vbCrLf)
  18.         End If
  19.  
  20.         If CheckBox1.Checked = True Then
  21.  
  22.             IO.File.AppendAllText("C:\MyLittlePlayer\settings.inf", "0" & vbCrLf)
  23.         ElseIf CheckBox1.Checked = False Then
  24.             IO.File.AppendAllText("C:\MyLittlePlayer\settings.inf", "1" & vbCrLf)
  25.         End If
  26.  
  27.         If CheckBox2.Checked = True Then
  28.             IO.File.AppendAllText("C:\MyLittlePlayer\settings.inf", "0" & vbCrLf)
  29.         ElseIf CheckBox2.Checked = False Then
  30.             IO.File.AppendAllText("C:\MyLittlePlayer\settings.inf", "1" & vbCrLf)
  31.         End If
  32.     End Sub



Sapreste dirmi come sovrascrivere invece che aggiungere?


MyLittleSuite Ready 2 Arrive - www.aicc.altervista.org/MLP
PM Quote
Avatar
r0gerblack (Ex-Member)
Pro


Messaggi: 70
Iscritto: 04/08/2008

Segnala al moderatore
Postato alle 22:50
Giovedý, 10/09/2009
bhe potresti provare a cancellare il file e poi riscriverlo, prova a mettere prima del codice di scrittura:
Codice sorgente - presumibilmente Plain Text

  1. IO.File.Delete(percorsofiledaleggere)


PM Quote
Avatar
Antivirusvivente (Normal User)
Rookie


Messaggi: 40
Iscritto: 26/07/2009

Segnala al moderatore
Postato alle 22:56
Giovedý, 10/09/2009
in questo modo ci sarebbe moolto pi¨ codice in pi¨, che secondo me sarebbe inutile, perchŔ dovrei star a recuperare di nuovo i dati. Non c'Ŕ una maniera pi¨ veloce?


MyLittleSuite Ready 2 Arrive - www.aicc.altervista.org/MLP
PM Quote
Avatar
r0gerblack (Ex-Member)
Pro


Messaggi: 70
Iscritto: 04/08/2008

Segnala al moderatore
Postato alle 23:05
Giovedý, 10/09/2009
Ma se il codice lo metti prima che il prog debba sovrascrivere i dati, che problema riscontri?

PM Quote
Avatar
Antivirusvivente (Normal User)
Rookie


Messaggi: 40
Iscritto: 26/07/2009

Segnala al moderatore
Postato alle 23:08
Giovedý, 10/09/2009
Ok ho provato il tuo codice ed effettivamente funziona, non so che problema mi ero posto, per˛ l'essenziale che funziona. Ti ringrazio :k:


MyLittleSuite Ready 2 Arrive - www.aicc.altervista.org/MLP
PM Quote
Avatar
r0gerblack (Ex-Member)
Pro


Messaggi: 70
Iscritto: 04/08/2008

Segnala al moderatore
Postato alle 23:12
Giovedý, 10/09/2009
Prego :k:!

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo