Opendialog et fichiers texte [Résolu]

Messages postés
13
Date d'inscription
samedi 3 janvier 2004
Dernière intervention
18 août 2008
- 5 nov. 2005 à 12:53 - Dernière réponse :
Messages postés
4304
Date d'inscription
samedi 16 octobre 2004
Dernière intervention
9 mars 2018
- 7 nov. 2005 à 02:28
Lorsque j'appel un opendialog, je ne peut plus ouvrir de fichier texte, après.

>L'ouverture de l'opendialog:
opendialog1.InitialDir:='';
opendialog1.Execute;
if opendialog1.filename='' then showmessage('Redéfinissez le chemin du fichier')
else edit1.Text:=opendialog1.FileName;

>L'ouverture de fichier:
ouverture_fichier_F;

i:=0;
form1.combobox3.clear;
//affichage de la liste de matricules d'individus
while not eof(F) do
begin
seek(F,i);
read(F,individu);
form1.combobox3.Items.Add(individu.matricule);


i:=i+1;
end;

:Les données de F ne sont plus lues!
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
5 nov. 2005 à 13:40
3
Merci
opendialog modifie le chemin par defaut de l'application donc ton
assignfile redemarre du chemin choisi pour ouvrir le fichier de
l'opendialog il faut faire:

assignfile(f,opendialog1.filename).

si tu veux repartir du repertoire precedent il faut le memoriser avant l'appel a opendialog.execute:

chemin_actuel: GetCurrentDir;

et le restaurer apres. SetCurrentdir(chemin_actuel);

bonne prog

Merci jlen100 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de jlen100
Messages postés
1651
Date d'inscription
samedi 10 juillet 2004
Dernière intervention
25 juillet 2014
5 nov. 2005 à 13:16
0
Merci
il y a plus simple pour charger un fichier texte dans un combobox:

form1.combobox3.Items.loadfromfile(opendialog1.FileName).

ensuite

comment ouvres-tu ton fichier dans ouverture_fichier_F?;

comment as-tu declaré ton fichier F?

si ton fichier est un fichier texte tu ne peux pas le charger dans une variable record.

bonne prog
Commenter la réponse de jlen100
Messages postés
13
Date d'inscription
samedi 3 janvier 2004
Dernière intervention
18 août 2008
5 nov. 2005 à 13:28
0
Merci
L'opendialog me permet de connaitre le nom d'un fichier autre que celui que je veux ouvrir avec "ouverture_fichier_F"

"ouverture_fichier_F" marche sauf après l'ouverture de l'opendialog.

Pour l'ouverture de F:

procedure ouverture_fichier_F;
begin
//Attribution d'un nom et d'un emplacement au fichier f
assignfile(F,'\individu.dat');

{$I-}reset(F);{$I+}
if ioresult<>0 then //rewrite(f) else reset(f);
begin
if not FileExists('/individu.dat') then
begin
rewrite(f)
end
else
begin
{$I-}closefile(F);
reset(F);
end;
end;



//mise en place du curseur au début du fichier
seek(F,0);
end;
Commenter la réponse de Tiekula
Messages postés
13
Date d'inscription
samedi 3 janvier 2004
Dernière intervention
18 août 2008
5 nov. 2005 à 14:17
0
Merci
Merci beaucoup, ça marche.

Ca donne:
dossier_courant:=GetCurrentDir;
opendialog1.InitialDir:='';
opendialog1.Execute;
if opendialog1.filename='' then showmessage('Redéfinissez le chemin du fichier')
else edit1.Text:=opendialog1.FileName;
SetCurrentdir(dossier_courant);
Commenter la réponse de Tiekula
Messages postés
4304
Date d'inscription
samedi 16 octobre 2004
Dernière intervention
9 mars 2018
7 nov. 2005 à 02:28
0
Merci
cherche l'erreur :



dossier_courant:=GetCurrentDir;

opendialog1.InitialDir:='';

opendialog1.Execute;

if opendialog1.filename='' then showmessage('Redéfinissez le chemin du fichier')

else edit1.Text:=opendialog1.FileName;






A modifier par :



if opendialog1.execute then

edit1.text := opendialog1.filename;



tout simplement



TOpenDialog.Execute renvois True si l'utilisateur click sur le boutton OK de opendialog et qu'un fichier est selectionné.

Renvois False dans tout les autre cas (fichier non selectionné, appuis sur Annuler ou Fermer).
Commenter la réponse de f0xi

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.