Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > как записать Variant в файл?


Автор: urix 12.4.2006, 18:46
например:
Код

var
  f:File;
  procedure Write_(s:Variant);
  var
    ts:string;
    ti:integer;
  begin
    if VarType(s) and varTypeMask=varString then begin
      ts:=s;
      if length(ts)>0 then
        BlockWrite(F,ts[1],length(ts));
    end else
    if VarType(s) and varTypeMask=varInteger then begin
      ti:=s;
      BlockWrite(F,ti,sizeof(ti));
    end;
  end;
begin
  AssignFile(f,Application.ExeName+'.tmp');
  Rewrite(f,1);
  Write_(5);
  Write_('xxx');
  CloseFile(F);
end;

Наверняка есть вариант более правильный? (чтоб не описавать процесс для каждого типа)

Автор: Yanis 12.4.2006, 19:25
Мне кажется всё таки придётся описывать для каждого типа. Что то вроде:
Код

  case VarType(s) of
    varInteger: { реализация записи } ;
    varString: { реализация записи } ;
  end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)