Problème : Stream et OpenDialog

silvergoldsilver Messages postés 21 Date d'inscription vendredi 9 octobre 2009 Statut Membre Dernière intervention 17 septembre 2012 - 8 mai 2012 à 19:01
 Utilisateur anonyme - 15 mai 2012 à 23:00
Bonjour,
(Je réécris mon message car il a été envoyé dans la rubrique C, C++ !)
Je cherche à utiliser OpenDialog pour ouvrir un fichier et le charger dans un MemoryStream.

Voici le code :
...
If OpenDialog1.Execute then
filename:= OpenDialog1.FileName;
...
Bloc:= TMemoryStream.Create;
Bloc.LoadFromFile(filename); //Copie du fichier dans le Bloc
...

L'aide de Delphi nous dit :
"if OpenDialog1.Execute then
filename := OpenDialog1.FileName;

Ce code affiche la boîte de dialogue et si l'utilisateur choisit le bouton OK, le nom du fichier sélectionné est copié dans la variable filename de type AnsiString préalablement déclarée." On a donc un type string.

LoadFromFile réclame également un type string.
Mais le compilateur signale un problème de compatibilité string et file.
Y a-t-il une solution ?
Merci
sgs

6 réponses

Utilisateur anonyme
8 mai 2012 à 20:36
Salut

procedure TForm1.Button1Click(Sender: TObject);
Var
MS:TMemorystream;
Str:String;
begin
If OpenDialog1.Execute Then
  Begin
    Str:=OpenDialog1.FileName;
    MS:=TMemorystream.Create;
    MS.LoadFromFile(Str);
  End;
end;


Ce code compile parfaitement.

Ps : Je profite de mon passage (qui se font rares) pour saluer les anciens de ce forum. Salut à tous
0
dubois77 Messages postés 675 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 19 février 2019 14
9 mai 2012 à 08:28
Salut Francky
(bien que je ne sois pas très ancien (sur le forum !) )


Dubois77
0
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
9 mai 2012 à 10:20
0
silvergoldsilver Messages postés 21 Date d'inscription vendredi 9 octobre 2009 Statut Membre Dernière intervention 17 septembre 2012
9 mai 2012 à 12:52
Bonjour,

Merci pour cette procedure qui fonctionne parfaitement.
J'ai l'impression qu'au tout début, je me suis embourbé avec un AssignFile que j'ai placé derrière OpenDialog.Execute...

...
If OpenDialog.Execute Then
AssignFile(filename, OpenDialog1.FileName);
...

Merci encore.
sgs
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Caribensila Messages postés 2527 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 16 octobre 2019 18
10 mai 2012 à 22:27
Salut mon Franckounet.
0
Utilisateur anonyme
15 mai 2012 à 23:00
Salut à vous 3
0
Rejoignez-nous