Ver Mensaje Individual
  #2  
Antiguo 15-11-2014
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Reputación: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
danielmj,

Cita:
Empezado por danielmj
...Guardar ListView como Texto Plano...


Revisa este código:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, ImgList;

type
  TForm1 = class(TForm)
    ListView1: TListView;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

// Crea un ListView
procedure TForm1.FormCreate(Sender: TObject);
var
   i : Integer;

begin

   // Crea 4 columnas en el ListView
   ListView1.ViewStyle := vsReport;
   for i := 0 to 3 do
   begin
      ListView1.Columns.Add;
      ListView1.Columns[i].Caption := 'Col-' + IntToStr(i);
      ListView1.Columns[i].Width := 150;
   end;

   // Adiciona las Filas al ListView
   for i := 0 to 9 do
      with ListView1.Items.Add do
      begin
         Caption := 'Caption Row-' + IntToStr(i);
         Subitems.Add('SubItem-0');
         Subitems.Add('SubItem-1');
         Subitems.Add('SubItem-2');
      end;

end;

// Salva el ListView en un Archivo TXT
procedure TForm1.Button1Click(Sender: TObject);
var
   i, j : Integer;
   F : TFileStream;
   Buffer : String;

begin

   SetCurrentDir(ExtractFilePath(Application.ExeName));

   F := TFileStream.Create('FileListView.txt', fmCreate);

   for i := 0 to ListView1.Items.Count - 1 do
   begin

      Buffer := Buffer + ListView1.Items.Item[i].Caption + ',';

      for j := 0 to ListView1.Items.Item[i].SubItems.Count - 1 do
         Buffer := Buffer + ListView1.Items.Item[i].SubItems.Strings[j] + ',';

      Delete(Buffer, Length(Buffer), 1);
      Buffer := Buffer + #13 + #10;
      F.Write(Buffer[1], Length(Buffer));
      Buffer := EmptyStr;

   end;

   F.Free;

end;

end.
El código anterior en Delphi 7 sobre Windows 7 Professional x32, crea un TListView y salva su contenido en un Archivo TXT, como se muestra en la siguiente imagen:



Espero sea útil

Nelson.

Última edición por nlsgarcia fecha: 15-11-2014 a las 16:07:38.
Responder Con Cita