je ne sais pas comment sauvegarder les données d'un fichier
je m'explique,
si par exemple on cree un repertoire, comment faire en sorte que l'ordinateur garde les noms renrés en memoire
comment sauvegarder les données
-
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Heu, désolé, j'ai rien compris. un exemple de ce que tu souhaites faire serait surement plus compréhensible ?
tu veux choisir un nom de fichier ou un de dossier et l'utiliser pour créer un fichier, c'est ça ?
tu veux choisir un nom de fichier ou un de dossier et l'utiliser pour créer un fichier, c'est ça ?
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
pour l'instant je fais comme ça :
Dans CodeArchiv , j'ai vu ça , c'est plus efficace ,je vais étudier ça pour le mettre en pratique 
Code : Tout sélectionner
Structure Parametres
Nom.s
Telephone.s
EndStructure
NewList Repertoire.Parametres()
;fabrique un répertoire
For a = 1 To 3
Read Nom$
Read Tel$
AddElement(Repertoire())
Repertoire()\Nom = Nom$
Repertoire()\Telephone = Tel$
Next a
;enregistre le repertoire
fichier$ = "RepertoireBidon.dat"
If CreateFile(0,fichier$)
ForEach Repertoire()
WriteStringN(Repertoire()\Nom)
WriteStringN(Repertoire()\Telephone)
Next
CloseFile(0)
EndIf
;efface le repertoire
ClearList(Repertoire())
;lecture du repertoire
If OpenFile(0,fichier$)
While Eof(0) = 0
AddElement(Repertoire())
Repertoire()\Nom = ReadString()
Repertoire()\Telephone = ReadString()
Wend
CloseFile(0)
EndIf
;affiche le résultat
ForEach Repertoire()
Debug Repertoire()\Nom
Debug Repertoire()\Telephone
Next
DataSection
Data.s "Toto","03.04.05.06"
Data.s "Tutu","23.23.56.26"
Data.s "Titi","43.98.54.71"
EndDataSection

Code : Tout sélectionner
; German forum: http://robsite.de/php/pureboard/viewtopic.php?t=2479&highlight=
; Author: NicTheQuick
; Date: 06. October 2003
; Save linked list in a file...
; LinkedList in Datei speichern:
; Ich habe eine Liste die ich durch eine Structur definiert habe. Wie kann ich diese in eine Datei speichern und wieder auslesen.
Structure ValueStructure
Long.l
Word.l
Byte.l
Float.f
EndStructure
Structure StringStructure
String1.s
String2.s
String3.s
EndStructure
NewList ValueLinkedList.ValueStructure()
NewList StringLinkedList.StringStructure()
Enumeration
#SaveFile
EndEnumeration
Procedure SaveLinkedList_Value(*FirstElement, StructureSize.l, File.s)
Protected *PosLL
If CreateFile(#SaveFile, File)
*PosLL = *FirstElement
Repeat
WriteData(*PosLL, StructureSize)
*PosLL = PeekL(*PosLL - 8) + 8
Until *PosLL = 8
CloseFile(#SaveFile)
EndIf
EndProcedure
Procedure LoadLinkedList_Value(StructureSize.l, File.s)
If ReadFile(#SaveFile, File)
ClearList(ValueLinkedList())
While Eof(#SaveFile) = 0
AddElement(ValueLinkedList())
ReadData(@ValueLinkedList(), StructureSize)
Wend
CloseFile(#SaveFile)
EndIf
EndProcedure
Procedure SaveLinkedList_String(*FirstElement, StructureSize.l, File.s)
Protected *PosLL, StringPos.l, StringLength.l, StringAddress.l
If CreateFile(#SaveFile, File)
*PosLL = *FirstElement
Repeat
For StringPos = 0 To StructureSize - 1 Step 4
StringAddress = PeekL(*PosLL + StringPos)
StringLength = Len(PeekS(StringAddress))
WriteLong(StringLength)
WriteData(StringAddress, StringLength)
Next
*PosLL = PeekL(*PosLL - 8) + 8
Until *PosLL = 8
CloseFile(#SaveFile)
EndIf
EndProcedure
Procedure LoadLinkedList_String(File.s)
Protected StringPos.l, StringLength.l
If ReadFile(#SaveFile, File)
ClearList(StringLinkedList())
While Eof(#SaveFile) = 0
AddElement(StringLinkedList())
For StringPos = 1 To 3
StringLength = ReadLong()
Select StringPos
Case 1
StringLinkedList()\String1 = Space(StringLength)
ReadData(@StringLinkedList()\String1, StringLength)
Case 2
StringLinkedList()\String2 = Space(StringLength)
ReadData(@StringLinkedList()\String2, StringLength)
Case 3
StringLinkedList()\String3 = Space(StringLength)
ReadData(@StringLinkedList()\String3, StringLength)
EndSelect
Next
Wend
CloseFile(#SaveFile)
EndIf
EndProcedure
;- Values
For a.l = 0 To 200 Step 4
AddElement(ValueLinkedList())
ValueLinkedList()\Long = a
ValueLinkedList()\Word = a + 1
ValueLinkedList()\Byte = a + 2
ValueLinkedList()\Float = a / 10
Next
FirstElement(ValueLinkedList())
SaveLinkedList_Value(@ValueLinkedList(), SizeOf(ValueStructure), "tempvalues.dat")
LoadLinkedList_Value(SizeOf(ValueStructure), "tempvalues.dat")
ResetList(ValueLinkedList())
ForEach ValueLinkedList()
Debug ValueLinkedList()\Float
Next
;- Strings
For a.l = 0 To 200 Step 3
AddElement(StringLinkedList())
StringLinkedList()\String1 = "abc: " + Str(a)
StringLinkedList()\String2 = Str(a + 1) + "abcdefghijklmnopqrstuvwxyz"
StringLinkedList()\String3 = "Diese Strings wurden alle gespeichert"
Next
FirstElement(StringLinkedList())
SaveLinkedList_String(@StringLinkedList(), SizeOf(StringStructure), "tempstrings.dat")
ClearList(StringLinkedList())
LoadLinkedList_String("tempstrings.dat")
ResetList(StringLinkedList())
ForEach StringLinkedList()
Debug StringLinkedList()\String2
Next