Forum Liberty Basic France

Le 06/11/2013 à 16h29

Libertynaute Avancé

Groupe: Membre

Inscrit le: 08/06/2012
Messages: 270
Bonjour à tous ! Après une petite (moyenne pose) je reviens en force sur l'art de programmer en justbasic mais je me retrouve (après 30 secondes) confronté à un dilemme de taille :

J'aurais besoin (pour un programme "top sicré"" pour le moment :siffle ) d'une petite fonction qui ferait ceci (algorithme) :

- Prendre ce que l'utilisateur a dit (bon là pas de problème)

- Y ajouter .tkn (facile :p )

- Tenter d'ouvrir un fichier avec comme nom la variable précédente (pas dur non plus)

- Si il existe : lancer (toujours pas de problème)

- Sinon écrire "Ce fichier n'existe pas" (et c'est que ça bloque)

Il me semblait l'avoir déjà vu, mais suite à quelques problèmes techniques, tout mes p'tits bouts de codes ne sont plus de ce monde :\'(


Donc si quelqu'un pourrait me donner un p'tit code avec cette fonction (ou quelque chose de similaire) à ça je lui en serait reconnaissant :D


A bientôt :)
____________________
Si le meilleurs langage de programmation existe, alors le Just Basic est loin devant.
Ne me tappez pas dessus ! Je débute :D

Web    
Le 06/11/2013 à 17h48

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 361
Salut,

Tu as deux solutions (voir plus).

La première est d'utiliser l'instruction file. Elle est asser étrange, c'est pour ça que dans le tuto, Partie II : 2) Les fichiers, je fournis la fonction (qui ne vient pas de moi) suivante :
Code VB :
function fileExists(path$, filename$)
    files path$, filename$, info$()
    fileExists = val(info$(0, 0))
end function

Elle renvoie 0 si le fichier n'existe pas. Il doit falloir mettre un truc genre dim info$(10, 10) quelque part.
Exemple :
Code VB :
dim info$(10, 10)
if fileExists("", "fichier.txt") then
    notice "fichier.txt existe"
else
    notice "fichier.txt n'existe pas"
end if


Deuxième solution, regarder du coté de onerror. Cette instruction peut-être très utile dans un programme fini car elle permet de remplacer la notice de crash de LB par ce que tu veux. Et ce n'est pas obligé de planter ton programme en cas d'erreur :)
Plus d'info ici : http://www.libertybasicuniversity.com/lb4help/ON_ERROR.htm

Cordialement
Jag


EDIT : En JB, l'instruction onerror fonctionne, mais pas l'instruction resume :(
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    
Le 06/11/2013 à 19h49

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2083
Il faut que dim info$() soit "lu" avant la procédure de test.
La coutume est de le mettre en début de code.
____________________
Roro

   
Le 06/11/2013 à 19h57

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 361
Et il est où là ?
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    
Le 06/11/2013 à 21h51

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2083
Va savoir....Où il l'a mis...Avec Alex , il vaut mieux préciser. ;)
____________________
Roro

   
Le 09/11/2013 à 10h08

Libertynaute Avancé

Groupe: Membre

Inscrit le: 08/06/2012
Messages: 270
Merci beaucoup pour vos réponses (le onerror a été la solution :D )
____________________
Si le meilleurs langage de programmation existe, alors le Just Basic est loin devant.
Ne me tappez pas dessus ! Je débute :D

Web    

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie