Показать сообщение отдельно

  #2  
Старый 18.04.2010, 15:39
JnK
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
Провел на форуме:
188563

Репутация: 52
По умолчанию

Цитата:
Сообщение от Si{R}ius  
Я хочу вместо
Код:
Procedure OpenFile(nomer: byte);
begin
case Nomer of
1: begin assignfile(f1,'f1.dat');
    if FileExists('f1.dat') then reset(f1)
     else rewrite(f1); end;
2: begin assignfile(f2,'f2.dat');
    if FileExists('f2.dat') then reset(f2)
     else rewrite(f2); end;
3: begin assignfile(f3,'f3.dat');
    if FileExists('f3.dat') then reset(f3)
     else rewrite(f3); end;
end;
end;
получить нечто похожее на
Код:
Procedure OpenFile(a: ff);
begin
 case a of
  f1: str:='f1.dat';
  f2: str:='f2.dat';
  f3: str:='f3.dat';
 end;
 assignfile(a,str);
    if FileExists(str) then reset(a)
     else rewrite(a);
end;
я не знаю, как это правильно реализовать, так как раньше не сталкивался с этим.
Попробуй вместо f1,f2,f3 использовать массив
тоесть примерно так:
PHP код:
var
  
f:array[1..3of textfile;

Procedure OpenFile(adword);
begin
  
case a of
    1
str:='f1.dat';
    
2str:='f2.dat';
    
3str:='f3.dat';
  
end;
  
assignfile(f[a],str);
  if 
FileExists(strthen 
    reset
(f[a])
   else 
     
rewrite(f[a]);
end
можно так:

PHP код:
var
  
f:array[1..255of textfile;

Procedure OpenFile(idword);
begin
  str
:='f'+inttostr(i)+'.dat';
  
assignfile(f[i],str);
  if 
FileExists(strthen 
    reset
(f[i])
   else 
     
rewrite(f[i]);
end
p.s. inttostr - перевод числа в строку (Delphi)
 
Ответить с цитированием