Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-08-2012
madiazg madiazg is offline
Miembro
 
Registrado: sep 2005
Ubicación: Canarias
Posts: 120
Poder: 19
madiazg Va por buen camino
Unir MemoryStream

Hola,
necesito unir dos MemoryStream en un tercero y guardar este último como un fichero. Cargo el primero pero no se añadir al final del primero el segundo memoryStream:

Código:
procedure UnirArchivos( nFile1, nFile2, nFileOut: string );
var
  File1,File2,FileOut: TMemoryStream;
begin
  File1 := TMemoryStream.Create;
  File2 := TMemoryStream.Create;
  FileOut := TMemoryStream.Create;
  File1.LoadFromFile(nFile1);
  File2.LoadFromFile(nFile2);

  FileOut.LoadFromStream(File1);

// Aquí tengo que copiar File2 al final de FileOut

  FileMpo.SaveToFile(nFileMPO);

  FileL.Free;
  FileR.Free;
  FileMPO.Free;
end;
¿Pueden ayudarme?

Gracias y saludos...
Miguel Angel
Responder Con Cita
  #2  
Antiguo 12-08-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola mazdiag.

Una forma puede ser:
Código Delphi [-]
procedure UnirArchivos(NameIn1, NameIn2, NameOut: string);
var
  i: Integer;
  in1, in2, fout: TMemoryStream;
  buffer: Byte;
begin
  in1:= TMemoryStream.Create;
  in2:= TMemoryStream.Create;
  fout:= TMemoryStream.Create;
  try
    in1.LoadFromFile(NameIn1);
    in2.LoadFromFile(NameIn2);
    fout.LoadFromStream(in1);
    fout.Seek(0,soFromEnd);
    for i:= 0 to in2.Size-1 do
    begin
      in2.Read(buffer, 1);
      fout.Write(buffer, 1);
    end;
    fout.SaveToFile(NameOut);
  finally
    in1.Free;
    in2.Free;
    fout.Free;
  end;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 12-08-2012 a las 21:22:01.
Responder Con Cita
  #3  
Antiguo 12-08-2012
WkaymQ48 WkaymQ48 is offline
Miembro
NULL
 
Registrado: jul 2012
Posts: 43
Poder: 0
WkaymQ48 Va por buen camino
Hola,

yo lo haría así:
Código Delphi [-]
procedure UnirArchivos( nFile1, nFile2, nFileOut: string );
var
  File1,File2,FileOut: TFileStream;
begin
  File1 := TFileStream.Create(nFile1,fmOpenRead);
  try
    File2 := TFileStream.Create(nFile1,fmOpenRead);
    try
      FileOut := TFileStream.Create(nFile1,fmCreate);
      try
        FileOut.CopyFrom(File1,0);
        FileOut.CopyFrom(File2,0);
      finally
        FileOut.Free;        
      end;
    finally
      File2.Free;
    end;
  finally
    File1.Free;
  end;
end;

pero si nos ajustamos a lo que pides:
Código Delphi [-]
procedure UnirArchivos( nFile1, nFile2, nFileOut: string );
var
  File1,File2,FileOut: TMemoryStream;
begin
  File1 := TMemoryStream.Create;
  File2 := TMemoryStream.Create;
  FileOut := TMemoryStream.Create;
  File1.LoadFromFile(nFile1);
  File2.LoadFromFile(nFile2);

  FileOut.CopyFrom(File1,0);
  FileOut.CopyFrom(File2,0);

  FileMpo.SaveToFile(nFileMPO);

  FileL.Free;
  FileR.Free;
  FileMPO.Free;
end;

¿Estas creando imágenes mpo?
Responder Con Cita
  #4  
Antiguo 12-08-2012
madiazg madiazg is offline
Miembro
 
Registrado: sep 2005
Ubicación: Canarias
Posts: 120
Poder: 19
madiazg Va por buen camino
Gracias, lo probaré.
Saludos...
Miguel Angel
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿ Se puede leer/escribir/reproducir archivos MP3 a/desde un MemoryStream ? rrf Varios 3 22-11-2008 02:11:51
enviar memorystream no indy 9 tcp Mike Deet Internet 2 13-12-2007 22:19:05
Imprimir pdf sin visualizar (este lo tengo en un MemoryStream) en aplicacion asp.net mamen .NET 0 29-03-2007 11:23:55
MemoryStream linea por linea elcigarra Varios 1 24-11-2005 19:30:59
convertir un Dataset en MemoryStream??? ALMERA Conexión con bases de datos 3 07-01-2005 01:04:16


La franja horaria es GMT +2. Ahora son las 10:22:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi