IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

est-ce possible de faire


Sujet :

Langage Delphi

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 34
    Points : 29
    Points
    29
    Par défaut est-ce possible de faire
    J'utilse ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
     
     
    procedure TForm1.Load(const AFilename: String);
    var
      MS : TMemoryStream;
      FS : TFileStream;
      I   : Integer;
    begin
     
      if FileExists(AFilename) then
        begin
          MS := TMemoryStream.Create;
          try
     
    {*
    mais est-ce possible de faire :
     for i:=0 to MyStringList.count-1 do
             FS := TFileStream.Create(MyStringList[i], fmOpenRead or fmShareDenyNone); *}
     
            FS := TFileStream.Create(AFilename, fmOpenRead or fmShareDenyNone);
            try
              MS.Size := FS.Size;
              FS.Position := 0;
              MS.Position := 0;
              MS.CopyFrom(FS, 0);
            finally
              FS.Free;
            end;
          finally
            MS.Free;
          end;
        end;
      end;
    end;
    Question :

    est-ce possible de faire :

    for i:=0 to MyStringList.count-1 do
    FS := TFileStream.Create(MyStringList[i], fmOpenRead or fmShareDenyNone);

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 875
    Points : 11 365
    Points
    11 365
    Billets dans le blog
    6
    Par défaut
    c'est possible, mais si tu remets dans la boucle MS.Position à 0 au lieu de le laisser à la fin du stream qui vient d'être ajouté, tu n'auras pas les fichiers à la queue leue leue dans le MemoryStream.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    procedure TForm1.Load(const AFilename: String);
    var
      MS : TMemoryStream;
      FS : TFileStream;
      I   : Integer;
    begin
     try
       MS := TMemoryStream.Create;
       for i:=0 to MyStringList.count-1 do
       if FileExists(MyStringList[i]) then
       try
         FS := TFileStream.Create(MyStringList[i], fmOpenRead or fmShareDenyNone); 
         FS.Position := 0;
         MS.CopyFrom(FS, FS.Size); // colle FS au bout de MS
       finally
         FS.Free;
       end;
     finally
       MS.Free:
     end;
    end;
    mais si tu inclus dans la bloucle le traitement du MemoryStream, cette remarque perd son utilité !

Discussions similaires

  1. [Tkinter] Est-il possible de faire pivoter des PhotoImage ?
    Par sigmar_avenger dans le forum Tkinter
    Réponses: 9
    Dernier message: 06/01/2007, 15h18
  2. Réponses: 5
    Dernier message: 28/04/2006, 09h20
  3. Est il possible de faire une fusion
    Par boy569 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 07/02/2006, 13h58
  4. Est il possible de faire planter un système Unix
    Par Patrick PETIT dans le forum Administration système
    Réponses: 15
    Dernier message: 15/06/2004, 15h16
  5. est il possible de faire un trie sur un paramètre donné
    Par chtiboss dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 17/03/2004, 11h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo