silvergoldsilver
Messages postés21Date d'inscriptionvendredi 9 octobre 2009StatutMembreDernière intervention17 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
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
silvergoldsilver
Messages postés21Date d'inscriptionvendredi 9 octobre 2009StatutMembreDernière intervention17 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
Vous n’avez pas trouvé la réponse que vous recherchez ?