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

    [Vb6] Salvare Matrice dentro file

    Salve forumisti...
    Avrei la necessità di salvare dentro ad un file (casuale o binario) una matrice a 3 dimensioni (praticamente stò progettando per la prima volta un form di salva/carica dati)
    Basta fare una put/get in un file binario della matrice?
    thk

  2. #2
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Originariamente inviato da francylosvitato
    Basta fare una put/get in un file binario della matrice?
    Più che della matrice lo devi fare per tutti i suoi elementi
    ... e non usare while wend è una sintassi deprecata

  3. #3
    Originariamente inviato da Mabi
    Più che della matrice lo devi fare per tutti i suoi elementi
    Ti faccio un esempio:
    per salvare faccio
    codice:
        
    Public Sub caricalo()
        Open nfile For Binary Access Write As #1
        If Index = 0 Then
                Put #1, 1, george
        Else
                Put #1, 1, matrix
        End If
        Close
    End Sub
    per caricare faccio
    codice:
    Public Sub caricalo()
        Open nfile For Binary Access Read As #1
        If Index = 0 Then
                Get #1, 1, george
        Else
                Get #1, 1, matrix
        End If
        Close
    End Sub
    e funziona...

  4. #4
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Dipende dalla modalità d'accesso al file (in questo caso Binary)
    ... e non usare while wend è una sintassi deprecata

  5. #5
    Originariamente inviato da Mabi
    Dipende dalla modalità d'accesso al file (in questo caso Binary)
    Facendo delle prove mi sono accorto che salvando/caricando george (booleana a due dimensioni) non mi dà problemi e funziona, invece salvando/caricando matrix (intera a tre dimensioni) mi dice "La variabile utilizza un tipo di automazione non supportato in Visual Basic, errore di runtime 458". E mò? :master:

  6. #6
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Ti faccio un esempio io:
    codice:
    Private Sub Carica()
    Dim Vettore(3) As Integer
    Dim Bool As Boolean
    
    Dim Cont As Integer
    Dim Riga As String
    
    
    Vettore(0) = 1
    Vettore(1) = 2
    Vettore(2) = 3
    Vettore(3) = 4
    Bool = True
    
    Open "C:\File.txt" For Input As #1
      Do Until EOF(1)
        Line Input #1, Riga
        If Left(Riga, 7) = "Vettore" Then
          Vettore(Cont) = CInt(Right(Riga, 1))
          Cont = Cont + 1
        End If
      Loop
      If Left(Riga, 4) = "Bool" Then
        Bool = CBool(Replace(Riga, "Bool=", ""))
      End If
    Close #1
    End Sub
    
    Private Sub Salva()
    Dim Vettore(3) As Integer
    Dim Bool As Boolean
    
    Dim Cont As Integer
    
    
    Vettore(0) = 1
    Vettore(1) = 2
    Vettore(2) = 3
    Vettore(3) = 4
    Bool = True
    
    Open "C:\File.txt" For Output As #1
      For Cont = 0 To UBound(Vettore)
        Print #1, "Vettore(" & CStr(Cont) & ")=" & CStr(Vettore(Cont))
      Next Cont
      Print #1, "Bool=" & CStr(Bool)
    Close #1
    End Sub
    ... e non usare while wend è una sintassi deprecata

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.