problème avec SortList()

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

problème avec SortList()

Message par gansta93 »

Bonjour,

Je veux faire un ajouteur de fonctions dans APIFunctionListing.txt.
Je lis donc d'abord le contenu du fichier, que je mais dans une liste chaînée.
Je sauvegarde l'encien APIFunctionListing.txt.
J'ajoute à ma liste chaînée qui contenait les API, celles que je veux ajouter dans APIFunction.txt. ou l'inverse j'ajoute d'abord et j'écris ensuite le contenu.
Je la trie par ordre alphabétique, puis j'écris son contenu dans le fichier APIFunction.txt que je recrais.
Le problème est que mes trois fonctions ajoutées restent à leur place dans la list,et ne font pas parties des trillées.
Pourquoi ?
Voici le code.

Code : Tout sélectionner

NewList apis.s()
nbapi = 0
AddElement(apis())
apis() = "JFWSayString (lpszStrinToSpeak$, bInterrupt)"
AddElement(apis())
apis() = "JFWStopSpeech ()"
AddElement(apis())
apis() = "JFWRunScript (LPCTSTR lpszScriptName$)"
If ReadFile(0, "APIFunctionlisting.txt")
  ReadString()
  DefType.s str
  str = ReadString()
  While str
    AddElement(apis())
    apis() = str
    str = ReadString()
  Wend
  CloseFile(0)
  Repeat
    If RenameFile("APIFunctionListing.txt", "APIFunctionListing.txt.bak") = 0
      If MessageRequester("Erreur", "Impossible de renommer le fichier APIFunctionListing.txt." + #lfcr$ + "Cliquez sur 'réessayer' pour renouveler la tentative, ou sur annuler pour quitter.", #MB_RetryCancel | #MB_IconExclamation) = #IDcancel
        MessageRequester("Erreur", "La sauvegarde n'a pas pue être faite. Par mesure de prévansion, le fichier APIFunction.txt ne va pas être modifié.", #MB_OK | #MB_IconStop)
        End
      EndIf
    Else
      Break
    EndIf
  ForEver
  ResetList(apis())
  SortList(apis(), 2)
  nbapi = CountList(apis()) + 1
  If CreateFile(0, "APIFunctionListing.txt")
    WriteStringN(Str(nbapi))
    ResetList(apis())
    ForEach apis()
      WriteStringN(apis())
    Next
  Else
    Debug "Peut pas créer."
  EndIf
Else
  Debug "Impossible d'ouvrire"
EndIf
End
Merci d'avance.
filperj
Messages : 395
Inscription : jeu. 22/janv./2004 1:13

Message par filperj »

On dirai bien que Sortlist() ne marche pas :?

Code : Tout sélectionner


NewList stringlist.S()

For t=1 To 9
   AddElement(stringlist())
   stringlist()=Chr(Random(25)+'A')
Next

Debug "Avant tri:"
ForEach stringlist()
   Debug stringlist()
Next
Debug "______________"
SortList(stringlist(),0)
Debug "Après tri:"
ForEach stringlist()
   Debug stringlist()
Next
Le chaos l'emporte toujours sur l'ordre
parcequ'il est mieux organisé.
(Ly Tin Wheedle)
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Cela voudrait-il dire que personne n'a jamais testé la foncion sur les forums pb ? :?
Répondre