Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.08;
Скачать: CL | DM;

Вниз

с listview в файл?   Найти похожие ветки 

 
linox   (2006-09-17 14:24) [0]

Такой вот вопрос:
есть данные в листвью, они добавляются и удаляются. нужно что бы добавляимые данные записывались в текстовый документ (лог-файл). если это первая запись нужно програмно создать этот файл? помогите если кто может


 
Dmitrij_K   (2006-09-17 14:58) [1]

AssignFile(F, "log.txt");
If FileExists("log.txt") then Append(F) else ReWrite(F);
for j:=0 to pred(ListView1.Items.Count) do
begin
// тут писать в файл
end;
CloseFile(F)


 
linox   (2006-09-17 15:05) [2]

2 Dmitrij_K:
а как именно делать запись в файл, я не знаю


 
Ketmar ©   (2006-09-17 15:26) [3]

> [2] linox   (17.09.06 15:05)
оставить клавиатуру! в хозяйственном продаются замечателные мётлы! купить -- и на улицу, трудиться во благо Родины.


 
linox   (2006-09-17 15:30) [4]

2 Ketmar:
можеш на орт вместо петросяна выступать, а то он уже старый и теряет свои позиции


 
Ketmar ©   (2006-09-17 15:32) [5]

> [4] linox   (17.09.06 15:30)
неко, иди в анус.


 
linox   (2006-09-17 15:34) [6]

linox   (17.09.06 15:30) [4]


 
linox   (2006-09-17 19:05) [7]

?????....savetofile(form1.listview1....?????7);
я не расдупляюсь как правильно записать....


 
Весь в делах   (2006-09-17 19:12) [8]

убейсибяапстену


 
Весь в делах   (2006-09-17 19:13) [9]

Ищи в архивах там есть ответ


 
linox   (2006-09-20 15:25) [10]

ненашел


 
Весь в делах   (2006-09-20 15:32) [11]

TStream


 
Наиль ©   (2006-09-20 15:44) [12]

AssignFile+F1 Examle


 
Dmitrij_K   (2006-09-20 15:58) [13]


> Весь в делах   (20.09.06 15:32) [11]
> TStream

Причет тут stream?


 
Весь в делах   (2006-09-20 16:02) [14]

Ivolg ©

unit Unit1;

interface

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

type
TForm1 = class(TForm)
  lv: TListView;
  procedure SaveToFile(Dir:string);
  function LoadFromFile(Dir:string):boolean;
private
  { Private declarations }
public
  { Public declarations }
end;

var
Form1: TForm1;
Signature,FileName:string;
implementation

uses Unit1, Unit5;

{$R *.dfm}
{------------------------------------Сохранение----------------------------}
procedure TForm1.SaveToFile(Dir:string);
var
idxItem, idxSub, IdxImage: Integer;
F: TFileStream;
pText: PChar;
sText: string;
W, ItemCount, SubCount: Word;
MySignature: array [0..7] of Char;
begin
FileName:=dir;
StrPCopy(MySignature, Signature);
F := TFileStream.Create(FileName, fmCreate or fmOpenWrite);
F.Write(MySignature, SizeOf(MySignature));
ItemCount := lv.Items.Count;
F.Write(ItemCount, SizeOf(ItemCount));
if lv.Items.Count > 0 then
  for idxItem := 1 to ItemCount do
     with lv.Items[idxItem - 1] do
        begin
          SubCount := Subitems.Count;
          F.Write(SubCount, SizeOf(SubCount));
          IdxImage := ImageIndex;
          F.Write(IdxImage, SizeOf(IdxImage));
          sText := Caption;
          w := Length(sText);
          pText := StrAlloc(Length(sText) + 1);
          StrPLCopy(pText, sText, Length(sText));
          F.Write(w, SizeOf(w));
          F.Write(pText^, w);
          StrDispose(pText);
          if SubCount > 0 then
            for idxSub := 0 to SubItems.Count - 1 do
              begin
                sText := SubItems[idxSub];
                w := Length(sText);
                pText := StrAlloc(Length(sText) + 1);
                StrPLCopy(pText, sText, Length(sText));
                F.Write(w, SizeOf(w));
                F.Write(pText^, w);
                StrDispose(pText);
              end;
        end;
F.Free;
end;
{------------------------------------------Загрузка-------------------------}
function TForm1.LoadFromFile(Dir:string):boolean;
var
F: TFileStream;
IdxItem, IdxSubItem, IdxImage: Integer;
W, ItemCount, SubCount: Word;
pText: PChar;
PTemp: PChar;
MySignature: array [0..7] of Char;
begin
FileName:=Dir;
Result:=True;
if not FileExists(FileName) then
  begin
    Result:=False;
    Exit;
  end;
lv.Items.BeginUpdate;
F := TFileStream.Create(FileName, fmOpenRead);
F.Read(MySignature, SizeOf(MySignature));
if MySignature <> Signature then
  begin
    F.Free;
    Result:=False;
    Exit;
  end;
F.Read(ItemCount, SizeOf(ItemCount));
lv.Items.Clear;
for idxItem := 1 to ItemCount do
  with lv.Items.Add do
    begin
      F.Read(SubCount, SizeOf(SubCount));
      F.Read(IdxImage, SizeOf(IdxImage));
      ImageIndex := IdxImage;
      F.Read(w, SizeOf(w));
      pText := StrAlloc(w + 1);
      pTemp := StrAlloc(w + 1);
      F.Read(pTemp^, W);
      StrLCopy(pText, pTemp, W);
      Caption := StrPas(pText);
      StrDispose(pTemp);
      StrDispose(pText);
      if SubCount > 0 then
        for idxSubItem := 1 to SubCount do
          begin
            F.Read(w, SizeOf(w));
            pText := StrAlloc(w + 1);
            pTemp := StrAlloc(w + 1);
            F.Read(pTemp^, W);
            StrLCopy(pText, pTemp, W);
            lv.Items[idxItem - 1].SubItems.Add(StrPas(pText));
            StrDispose(pTemp);
            StrDispose(pText);
          end;
    end;
F.Free;
lv.Items.EndUpdate;
end;



Страницы: 1 вся ветка

Текущий архив: 2006.10.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.04 c
15-1158160453
Vlad Oshin
2006-09-13 19:14
2006.10.08
пистолет мини-рассказ


15-1157984994
Alx_
2006-09-11 18:29
2006.10.08
"Потрепаться" перестала загружаться в Magic Forum(1.2)


3-1154986183
VitalikS
2006-08-08 01:29
2006.10.08
Commit по одной


3-1155172585
Александр007
2006-08-10 05:16
2006.10.08
Доступ к чужой базе Paradox


15-1158296027
MBo
2006-09-15 08:53
2006.10.08
Дюжина несложных пятничных задачек





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский