SVP aidez moi (VB6)

Résolu
mounir234 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   -  
mounir234 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   -
bonjour tout le monde
je cherche une instruction qui permet d'enregistrer une structure (type) dans un fichier
ex
private type melo
nom as string
age as integer
end type
dim persone(1 to 5) as melo
je veut enregistrer les donnees dans un fichier et effectuer une recherche apres .
comme par example dans le language C :
fwrite(persone,24,5,fichier).
merci de votre aide
A voir également:

2 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
en VB6 ta structure devrait se libellé comme suit

Type ERG (nom au choix)
nom as string
age as integer
dim persone(1 to 5) as melo
end type

et pour être visible partout : public NomVar as ERG

En VB6 les structure ne sont admise que dans les modules.
Par contre je ne connais pas la déclaration ,as melo ?
a+
louis
0
mounir234 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   12
 
merci pour votre réponce mais il ya un mal entendu :
melo = ERG (c'est le nom du nouveau type que je veut creer)
persone(1 to 5) = tableau de personne de type que je vien de creer (melo)
et le but c'est d'enregistrer les donnees sur un fichier text
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
bonjour,
je ne sais pas si tu a encore besoin d'une réponse ?
toutefois une solution quand même.
J'ai mieux compris ce que tu veux faire

Type melo
Age as integer
nom as string * 20
end type

public personne (1 to 5) as melo

ouvrir le fichier
dim Fich as freefile
open "NomFichier" for random as #fich len=len(melo)
mettre les données
put #fich,Numéro d'enrégistrement (Ex:1),melo

close #fich
Pour recherché les données
remplacer put par get
get #fich,Numéro d'enrégistrement (Ex:1),melo

mettre une donnée dans melo :melo.Age=xx
melo.nom="nom"
Remarques
si tu dimentionne personne à 5 tu n'a que 5 enrég possible.
Dans les déclaration de Type tu est obligé de donner une longeur aux variable alphanumérique.
Qaun tu reprend une variable alpha, quelque soit la longeur du nom la variable a la longueur de la dimention.
pour avoir uniquement le nom,par exemple if faudrait faire
dim A as string
A=trim(melo.nom)
Voilà, j'espère que cette fois-ci j'étais sur les bon rails.
A+
louis
0
mounir234 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   12
 
// declaration du nouveau type
Type melo
Age as integer
nom as string * 20
end type

// declaration d'une variable de type "nouveau type"
public personne (1 to 5) as melo

//ouvrerture du fichier
dim Fich as freefile
open "NomFichier" for random as #fich len=len(melo)

//enregistrement de la structure dans un fichier
put #fich,Numéro d'enrégistrement (Ex:1),melo

NB: si vous enregistrer 2 fois dans le meme "Numéro d'enrégistrement" le premiére enregistrement sera
ecrasé par le 2éme . alors pour l'evité vous devez métre une variable qui s'incrémente a chaque fois.

// Fermeture du fichier
close #fich

// reccupération des données a partire du fichier
get #fich,Numéro d'enrégistrement (Ex:1),melo

// NB: pour mettre une donnée dans melo :
melo.Age=xx
melo.nom="nom"

//ou bien
with melo
.age=age
.nom="nom"
end with
0