Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: Narciso - Novembre 06, 2019, 11:05:57 am

Titolo: salvare file con dati typed
Inserito da: Narciso - Novembre 06, 2019, 11:05:57 am
 public

     type talunno = record
      nome:string[50];
      i1,i2,i3:integer;
      end;
    type tvalutazione=record
      classe:string;
      nalunni:integer;
      tipologia:integer;
      alunni:array [1..40] of talunno;
      end;

    var valutazione:tvalutazione;
    filevalutazione: file of tvalutazione;
        alunnoattivo:integer;     


Ho una struttura dati che comprende la variabile Valutazione  che al suo interno contiene un'altra variabile tipizzata ( talunno).
Il compilatore non mi permette di assegnare al file il tipo tvalutazione poiché contiene a sua volta il dato typed Alunni.

Che soluzione mi proponete?

Vorrei salvare in un file questa variabile e poi ricaricarla. Ho provaro con assign
Titolo: Re:salvare file con dati typed
Inserito da: Stilgar - Novembre 06, 2019, 11:37:34 am
Prova ad usare le fuzioni non tipizzate.BlockRead e BlockWrite.
Forse ci rieci a metterci dentro le valutazoni.



Titolo: Re:salvare file con dati typed
Inserito da: bonmario - Novembre 06, 2019, 12:12:39 pm

Che soluzione mi proponete?

Vorrei salvare in un file questa variabile e poi ricaricarla. Ho provaro con assign

Prova così:
Codice: [Seleziona]
type Pippo=file of tvalutazione;
var filevalutazione: Pippo;

Naturalmente al posto di "Pippo", metti un nome a piacere !!!

Ho scritto una cavolata, non funziona nemmeno così ...

Ciao, Mario
Titolo: Re:salvare file con dati typed
Inserito da: nomorelogic - Novembre 06, 2019, 02:33:56 pm
Che soluzione mi proponete?

Salvare in JSON lo hai valutato?
Titolo: Re:salvare file con dati typed
Inserito da: Stilgar - Novembre 06, 2019, 02:35:05 pm
... Nomore...
Titolo: Re:salvare file con dati typed
Inserito da: bonmario - Novembre 06, 2019, 02:42:45 pm
Il problema era la dichiarazione di "classe", che non aveva la dimensione.

Così compila:
Codice: [Seleziona]
procedure TForm1.FormCreate(Sender: TObject);
type talunno=record
                 nome:string[50];
                 i1,i2,i3:integer;
               end;

     tvalutazione=record
                    classe:string[50];
                    nalunni:integer;
                    tipologia:integer;
                    alunni:array [1..40] of talunno;
                   end;

var valutazione:tvalutazione;
    filevalutazione: file of tvalutazione;
    alunnoattivo:integer;

begin

end;


Ciao, Mario
Titolo: Re:salvare file con dati typed
Inserito da: Narciso - Novembre 07, 2019, 07:36:38 am
Eh, scusate la distrazione, non me ne ero accorto. Leggevo l'errore e confondevo