Page 1 sur 2

[R] FileRead ne renvoit rien

Posté : mar. 19 août 2014 16:55
par iCitron
Bonjour,

Concernant la petite partie de code ci-dessous:

Code : Tout sélectionner

$file = FileOpen("test.txt", 0)
$FileContent = FileRead($file)
MsgBox(0, "Content:", $FileContent)
FileClose($file)
Je rencontre des problèmes;
Le fichier "test.txt" est non vide, et se trouve dans le même dossier que le fichier .au3
Pourtant, la msgbox ne renvoit rien..

J'ai pensé à des problèmes de permissions et d'autorisation pour le fileopen, cela peut il venir de la?
Si oui comment faire pour résoudre ce problème?
Si non, mon code est il erroné?

Merci de votre aide.

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 16:59
par jguinch
Il faut tout d'abord vérifier ce que te renvoie FileOpen.
Tu peux également spécifier le chemin d'accès au fichier :

Code : Tout sélectionner

$file = FileOpen(@ScriptDir & "\test.txt", 0)
If $file = -1 Then Exit MsgBox(16, "Erreur", "Impossible d'ouvrir le fichier")
 

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 16:59
par TommyDDR
Essayez ça :

Code : Tout sélectionner

$file = FileOpen("test.txt", 0)
MsgBox(0, "$file", $file)
$FileContent = FileRead($file)
MsgBox(0, "Error : ", @error)
MsgBox(0, "Content:", $FileContent)
FileClose($file)
$file doit être >= 0 et @error = 0.

Edit : Grillé par jguinch

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:00
par Alaghir
Ton chemin menant au fichier à modifier et apriori ce sera bon.

Code : Tout sélectionner

$file = FileOpen(@scriptdir & "\test.txt", 0)

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:02
par TommyDDR
La réponse de Alaghir est aussi à prendre en compte, il faut éviter au maximum de laisser des noms de dossiers relatif, car en réalité :

"test.txt" = @WorkingDir & "\" & "test.txt"
Ce qui est totalement différent de @ScriptDir & "\" & "test.txt"

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:03
par jguinch
@TommyDDR : un peu comme j'ai dit quoi... :mrgreen:

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:08
par iCitron
J'ai $file: -1 et error: 1
Même avec ce nouveau chemin cela ne marche pas non plus.

Si cela peut aider (?);
Je suis sous W8 x64

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:08
par jguinch
Que retourne ça ?

Code : Tout sélectionner

MsgBox ( 0, "", FileExists(@scriptdir & "\test.txt") )

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:09
par iCitron
jguinch a écrit :Que retourne ça ?

Code : Tout sélectionner

MsgBox ( 0, "", FileExists(@scriptdir & "\test.txt") )
=> Juste 0

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:11
par Faco
il y a quoi dans "test.txt"? si il fait plusieurs giga je sais pas si ça passe ^^.

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:12
par Alaghir
Juste par hasard, où est ton fichier ?

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:16
par iCitron
Mon fichier texte se trouve dans un dossier, sur le bureau.
Il contient quelques mots, sur plusieurs lignes (1ko).

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:18
par Faco
et ton script est sur le bureau aussi???
sinon c'est @DesktopDir et pas @ScriptDir

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:19
par iCitron
Mon script est dans ce même dossier.

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:22
par TommyDDR
@jguinch : ah oui :)

@Faco : Le txt est dans le même dossier que le programme, @ScriptDir est donc correct.

@iCitron : Vous devez mal faire quelque chose, regardez bien dans la barre de titre de SciTe si le chemin correspond bien (ça arrive qu'on déplace un code source en oubliant de le réouvrir dans SciTe).

Pour être sur de vous, fermer SciTe, déplacez le txt et le au3 à la racine de votre disque (C:\) et re-testez.

Et profitez-en pour formater votre PC et installer Windows 7 :roll:

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:24
par Faco
TommyDDR a écrit : Et profitez-en pour formater votre PC et installer Windows 7 :roll:
+1

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:25
par iCitron
La barre de titre indique bien le bon chemin d'accès..
Je veux bien mal faire quelque chose, mais si seulement je savais ce que c'est :(

J'avoue avoir passé 6 ans sous vista, et au final, c'etait pas si mal comparé à w8 (sur lequel je suis largué).

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:27
par iCitron
Tiens j'ai une idée, je vais faire le même test sous mon vieux grille pain vista, voir ce qu'il me retourne.

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:29
par TommyDDR
Si vous avez trouvé vista pas mal, passez vraiment sous w7 ^^

Re: [..] FileRead ne renvoit rien

Posté : mar. 19 août 2014 17:35
par iCitron
Bon, sous le grille pain; aucun souci, j'ai bien la jolie MsgBox, avec le texte affiché.. (Et ca, même avec le code de base, sans aucune modifications..)