Torna indietro   Hardware Upgrade Forum > Software > Programmazione

OPPO Watch X2 Mini, lo smartwatch compatto a cui non manca nulla
OPPO Watch X2 Mini, lo smartwatch compatto a cui non manca nulla
OPPO Watch X2 Mini è uno smartwatch compatto capace di offrire un'esperienza completa di monitoraggio della salute e fitness con una cassa da 43 mm che può adattarsi a qualsiasi tipo di polso, dal più grande al - soprattutto - più piccolo. Con l'architettura dual-chip e un'autonomia che può coprire due giorni con tranquillità, rappresenta la soluzione ideale per chi cerca prestazioni premium in un formato ridotto.
Xiaomi 15T Pro, è lui il nuovo best buy? La recensione
Xiaomi 15T Pro, è lui il nuovo best buy? La recensione
Dopo il recente lancio della serie Xiaomi 15T di Monaco, vi parliamo oggi della versione più performante della nuova famiglia, ovvero Xiaomi 15 T Pro. Vi raccontiamo la nostra prova nel dettaglio, spiegando perché a questo prezzo e in questa fascia, questo smartphone ha davvero senso tenerlo in seria considerazione.
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento
Acer ha ampliato la sua offerta professionale con il TravelMate P6 14 AI, un notebook ultraleggero e robusto pensato per chi lavora in mobilità. Certificato Copilot+ PC, combina design premium, autonomia elevata e piattaforma Intel Core Ultra Serie 2 con funzionalità AI, garantendo sicurezza, affidabilità e produttività per l'utenza business moderna.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-12-2010, 18:11   #1
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
[VB.NET 2010] Scrivere listbox su file txt

ciao ragazzi

allora io ho un form con una listbox che ci compila di items (10-15 items) in base a delle istruzioni che fa la form , perciò è tutto automatico
la listbox è una specie di log eventi del programma , tiene traccia di ciò che fa il programma.

fin qui funziona tutto

solo che ora vorrei che alla chiusura del form tutti gli items della listbox vengano salvati su un file (txt) con

- nome file = data_ora
- contenuto = tutti gli items della listbox

per ora ho fatto questo

Codice:
Private Sub EsciToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EsciToolStripMenuItem.Click
 For Each messaggio In LogBox.Items

        Next
End Sub
lo so che è niente ,.. però non ho mai fatto operazioni su file eccetto su c/c++ con fstream
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2010, 19:14   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Ludo237 Guarda i messaggi
solo che ora vorrei che alla chiusura del form tutti gli items della listbox vengano salvati su un file (txt) con

- nome file = data_ora
- contenuto = tutti gli items della listbox
Codice:
        Dim testoFile As New System.Text.StringBuilder
        Dim nomeFile As String = DateTime.Now.ToString.Replace("/", "-") & ".txt"
        For i As Integer = 0 To ListBox1.Items.Count - 1
            testoFile.Append(ListBox1.Items(i).ToString & vbCrLf)
        Next
        My.Computer.FileSystem.WriteAllText(percorso & nomeFile, testoFile.ToString, False)
__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 08:53   #3
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Codice:
        Dim testoFile As New System.Text.StringBuilder
        Dim nomeFile As String = DateTime.Now.ToString.Replace("/", "-") & ".txt"
        For i As Integer = 0 To ListBox1.Items.Count - 1
            testoFile.Append(ListBox1.Items(i).ToString & vbCrLf)
        Next
        My.Computer.FileSystem.WriteAllText(percorso & nomeFile, testoFile.ToString, False)
MarcoGG
l'unica cosa che "percorso" non esiste e se provo a farlo diventare una variabile (contenente il path che mi server) mi dice che Testfile viene utilizzata prima di ricevere un valore

Ultima modifica di Ludo237 : 22-12-2010 alle 09:06.
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 10:31   #4
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Ma esattamente DOVE inizializzi percorso rispetto al mio codice ?
__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 10:42   #5
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Ma esattamente DOVE inizializzi percorso rispetto al mio codice ?
se prendo e copio il tuo codice mi dice che la variabile percorso (ultima riga nella parentesi) non è dichiarata

allora la dichiaro prima di tutte.

Codice:
dim percorso as string = "C:/...."
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 10:55   #6
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Ah, ok.
Probabilmente rompe perchè non gli piace che testoFile sia vuoto.
Per maggior sicurezza risolvi così :

Codice:
        Dim percorso As String = Application.StartupPath & "\"
        Dim testoFile As New System.Text.StringBuilder("")
        Dim nomeFile As String = DateTime.Now.ToString.Replace("/", "-") & ".txt"
        For i As Integer = 0 To ListBox1.Items.Count - 1
            testoFile.Append(ListBox1.Items(i).ToString & vbCrLf)
        Next
        If testoFile.ToString <> "" Then My.Computer.FileSystem.WriteAllText(percorso & nomeFile, testoFile.ToString, False)
__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 10:59   #7
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
se aggiungo

Codice:
("")
dopo stringbuilder me lo sottolinea indicandomi "limiti di matrici non possono trovarsi negli identificatori del tipo"

EDIT : NO SCUSA ho sbagliato a scrivere io il codice -.- MEA CULPA
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 11:03   #8
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
l'unico problema che ho è il nome del file , sembra che 22-10-2010 12:03:00.txt per lui non sia corretto
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 11:16   #9
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Ludo237 Guarda i messaggi
l'unico problema che ho è il nome del file , sembra che 22-10-2010 12:03:00.txt per lui non sia corretto
Sì chiaro, ho capito. Ha a che fare con le impostazioni locali.
Non puoi mettere i due-punti nel nome file. Nel mio caso invece mette il punto come separatore orario e funziona.
Tra un po' ti posto una mia Function ( appena la trovo ) che genera la stringa giusta a partire dalla data, e che taglia la testa al toro...
__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 12:34   #10
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Ok, trovata ( non mi andava di riscriverla da capo... oggi mi sento pigro ) :
Codice:
    Public Function GetNomeFileTxt(ByVal D As DateTime) As String

        Dim S As String

        Dim Yr As String = D.Year.ToString
        Dim Mh As String = D.Month.ToString.PadLeft(2, "0")
        Dim Dy As String = D.Day.ToString.PadLeft(2, "0")
        Dim hh As String = D.Hour.ToString.PadLeft(2, "0")
        Dim mm As String = D.Minute.ToString.PadLeft(2, "0")
        Dim ss As String = D.Second.ToString.PadLeft(2, "0")

        S = Yr & "-" & Mh & "-" & Dy & "_" & hh & "." & mm & "." & ss & ".txt"
        Return S

    End Function
Perciò basta sostituire in :

Codice:
Dim nomeFile As String = GetNomeFileTxt(DateTime.Now)
__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 13:15   #11
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Ok, trovata ( non mi andava di riscriverla da capo... oggi mi sento pigro ) :
Codice:
    Public Function GetNomeFileTxt(ByVal D As DateTime) As String

        Dim S As String

        Dim Yr As String = D.Year.ToString
        Dim Mh As String = D.Month.ToString.PadLeft(2, "0")
        Dim Dy As String = D.Day.ToString.PadLeft(2, "0")
        Dim hh As String = D.Hour.ToString.PadLeft(2, "0")
        Dim mm As String = D.Minute.ToString.PadLeft(2, "0")
        Dim ss As String = D.Second.ToString.PadLeft(2, "0")

        S = Yr & "-" & Mh & "-" & Dy & "_" & hh & "." & mm & "." & ss & ".txt"
        Return S

    End Function
Perciò basta sostituire in :

Codice:
Dim nomeFile As String = GetNomeFileTxt(DateTime.Now)
ma c'è qualcosa che non sai ?

Grazie mille (di nuovo)
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 14:35   #12
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
Preferisco andare un attimo OT piuttosto che aprire un nuovo 3D solo per una domandina idiota

su una combobox dinamica creata in questo modo

Codice:
        Dim Email_ComboTable As New DataTable()
        Connessione_SmsPanel.Open()
        Adapter_Dirette_SmsPanel.Fill(Email_ComboTable)
        Connessione_SmsPanel.Close()
        Email_ComboBox.DataSource = Email_ComboTable
        Email_ComboBox.DisplayMember = "email"
        Email_ComboBox.ValueMember = "id_email"
io riesco a prelevare l'id di ogni opzione della combobox cosi

Codice:
Dim id_email As Integer = Email_ComboBox.SelectedValue
però se volessi anche prelevare il valore ?
perchè cosi come scritto sopra io prelevo l'id_email ma se volessi anche prelevare l'effettiva email ? spero di essere stato chiaro
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 15:57   #13
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Se parli di .SelectedValue ti riferisci all'item selezionato, perciò dal momento che la ComboBox, una volta eseguita la selezione "si chiude", la proprietà giusta dovrebbe essere semplicemente .Text .
__________________
Contattami su FaceBook --> [ ::: MarcoGG su FaceBook ::: ]
Visita il mio Blog --> [ ::: Il Blog di MarcoGG ::: ]
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2010, 17:24   #14
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
yea it works (non ne dubitavo )
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2010, 18:42   #15
Ludo237
Member
 
L'Avatar di Ludo237
 
Iscritto dal: Feb 2009
Città: Varese
Messaggi: 205
Ora sto facendo il procedimento inverso .. ovvero voglio caricare un file TXT e visualizzarlo
Utilizzo la classe OpenFileDialog ma non so come far visualizzare il file txt ... cioè posso utilizzare una listbox??? oppure c'è qualche altro metodo???

il codice che ho fatto per ora è questo
Codice:
     Private Sub Sfoglia_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Sfoglia_Button.Click
        Dim myStream As Stream
        Dim openFileDialog1 As New OpenFileDialog()

        openFileDialog1.InitialDirectory = Application.StartupPath & "\"
        openFileDialog1.Filter = "txt files (*.txt)|*.txt"

        If openFileDialog1.ShowDialog() = DialogResult.OK Then
            NomeFile_TextBox.Text = openFileDialog1.FileName
            SmsPanel.LogBox.Items.Add(Now() & "   Aperto il log eventi : " & openFileDialog1.FileName)
            myStream = openFileDialog1.OpenFile()
            If Not (myStream Is Nothing) Then
                myStream.Close()
            End If
        End If
    End Sub
Ci sono metodi migliori ?
nel "NomeFile_Textbox" mi mostra tutto il path , è possibile far vedere solo il nome del file?

Ultima modifica di Ludo237 : 23-12-2010 alle 18:53.
Ludo237 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


OPPO Watch X2 Mini, lo smartwatch compatto a cui non manca nulla OPPO Watch X2 Mini, lo smartwatch compatto a cui...
Xiaomi 15T Pro, è lui il nuovo best buy? La recensione Xiaomi 15T Pro, è lui il nuovo best buy? ...
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento Acer TravelMate P6 14 AI: il Copilot+ PC sotto i...
ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondono completezza e duttilità ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondo...
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Per la prima volta, le energie rinnovabi...
Le app entrano in ChatGPT. Da Spotify a ...
Ecco il meglio del Prime Day Amazon: tut...
Sony WH-1000XM5 e altre cuffie a un prez...
Prime Day Amazon: super sconti su robot ...
Scope elettriche al minimo storico su Am...
Festa delle Offerte Prime - TV a prezzi ...
Prime Day da urlo per gli smartphone: re...
Tutte le offerte sui Samsung Galaxy S25 ...
Prime Day Amazon: Apple Watch ai minimi ...
Tutte le offerte Apple per il Prime Day:...
Gli 8 portatili più scontati del ...
Prime Day Amazon: portatili gaming al mi...
Prime Day Amazon: -20% extra su migliaia...
Scarpe che vi faranno correre alla veloc...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 06:58.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v