Récupérer/Ecrire dans un fichier texte


#1

Bonjour,

Je tente (desespèrement) d’afficher un texte à partir d’un fichier… J’ai trouvé des exemples mais quelque chose doit m’échapper.

Le contenu de mon fichier test.txt :

<?xml version="1.0" encoding="ISO-8859-1"?> SEBBONARD

Mes évenements :
testtxt.jpg

Via le debugger la variable reste toujours à zéro…
J’ai placé le fichier test.txt dans le même dossier que mon gdg…
Qu’oublies-je donc ?


#2

Salut,

tu es sûr que tu utilises l’action pour récupérer un texte ? (car je vois marqué “valeur” et donc nombre)


#3

Merci pour ta réponse Victor.

En fait je ne suis pas sûr de grand-chose :smiley:
J’ai testé 2 actions : fichierXML --> Lire un texte et fichierXML --> Lire une valeur

J’ai utilisé ça :
lire1texte.jpg

Je m’étais aidé du Wiki et ça me parraissait relativement simple (même si les exemples donnés semblent faire référence à une ancienne version de GD).
Pourquoi? Pourquoi? Pourquoi? :cry: :slight_smile:


#4

Game Develop lit pas le contenu entre balises comme :

<aa>BLABLA</aa>

Mais lit plutôt

<aa value="aaa"/>

(je crois que c’est value ou alors c’est text ).


#5

Rrrrrrr!!
Pas mieux, ça ne fonctionne pas… J’ai tout testé, value, text… Il ne veux pas récupérer la valeur.
Le fichier doit bien être placé dans le même répertoire que le gdg ?

EDIT:
Bon, j’ai un peu avancé, mais c’est pas encore ça…

  • Le fichier texte doit être placé dans le répertoire d’installation de GD (là où se trouve l’executable).
    Je trouve ça un peu galère… Je suppose que c’est dû à certaines contraintes mais c’est pas possible de changer ça? De le mettre dans le même répertoire que le fichier gdg?

Bon, du coup j’arrive à récupérer une valeur (chiffre) comme ça:

  • Fichier Texte :
  • Evènement : Fichier XML --> Lire une valeur

Par contre, je ne trouve pas le moyen de récupérer du texte.
Pour les évenement, j’ai utilisé “Lire un texte” (là, je pense que j’ai bon :wink: )
Mais pour le XML, comment dois-je le construire (j’ai essayé mais ça ne fonctionne pas)

Help, you know I need someone, heeeeEElp !..


#6

Bon, j’ai trouvé :smiley:

Je récapitule :
1- Le fichier texte doit se trouver directement dans le dossier d’installation du logiciel (et non pas dans le répertoire où se trouve le fichier de travail egd)

2- Construction du fichier texte (XML):

3- Les évenements :
Fichier XML --> Lire une valeur (permettra de lire le nombre correspondant à value)
Fichier XML --> Lire un texte (permettra de lire le texte correspondant à texte)

J’ai 3 remarques:
1- Comme je l’ai dit plus haut, j’aurais trouvé plus simple d’avoir à placer le fichier texte dans le même répertoire que l’egd.

2- Il y avait un piège (coquinou, vas!! :smiley: )… Comme cela marchait avec “value”, je me suis dit qu’il fallait utiliser “text” (comme Victor, voir plus haut)…
Point que nenni !! C’est “value” (en anglais) et “texte” (en français)… Ca c’est vache!! :smiley:

3- Il semblerait (avant compilation) que GD n’écrive pas directement dans le fichier texte. Pourtant il prend bien les valeurs au départ dans ce fichier et les modifications sont prises en compte dans GD (mais pas das le fichier)…
Bon, ok, c’est pas clair… Exemple:

  • dans mon fichier texte je mets TOTO=10 --> Dans GD, il récupère bien 10
  • A partir de GD, je modifie TOTO (=20) --> Si par la suite, je récupère la valeur de TOTO, elle est bien à 20 (même si je ferme GD)
  • Par contre(1), si je regarde le fichier texte, j’ai toujours TOTO=10 (le fichier est inchangé depuis le début)
  • Par contre(2), si je remplace la valeur de TOTO directement dans le fichier texte (TOTO=30 par exemple), dans GD j’ai TOTO=20 (il conserve bien la modification faite à partir de GD mais ne prend plus la valeur du fichier texte)
    J’en conclus donc, qu’à part à la 1ère utilisation de ce fichier texte, GD écrit et fait appel à un autre fichier texte (temporaire?) et ne tiens plus compte de mon fichier (et ce, même si je ferme GD, éteind PC et coupe le compteur d’eau).
    Si c’est ça, y a t’il moyen d’y accéder? Pour le moment, pour mes tests, je suis obligé de compiler le jeu à chaque fois… C’est un peu contraignant.