Re: CommaText
От: kgu87  
Дата: 08.03.05 22:23
Оценка:
Здравствуйте, MLT, Вы писали:

MLT>У меня вот такая проблема. Есть программа которая выдаёт отчёт в иде файла. Каждая строка состоит из 2-х чисел, получается как бы 2 столбща. Необходимо разделить их в 2 разных файла. Числа в строках дробные и формат такой:

MLT>-971.089 2354.538
MLT> 699.006 -5911.55
MLT> Получается что строки начинаются либо с пробела, либо сразу с числа.

MLT> h:=TStringList.Create;

MLT> h.LoadFromFile('Temp.txt');
MLT> Memo1.Lines.LoadFromFile('Temp.txt');
MLT> for i:=1 to 2048 do
MLT> begin
MLT> if Pos(' ',h[i])=0 then

MLT> Дальше я хочу задать шаблон строки


MLT> h.CommaText:=


MLT> Но чтобы я дальше не написал, выходит ошибка.

MLT> Подскажите как задать этот шаблон.

Извините за встречный вопрос, но почему нельзя просто читать файл без TStringList? Что-то вроде:

var F : TextFile;
    S, s1, s2, delim : String;
    f1, f2 : TStringList;
    i, iPos : Integer;
begin
  f1 := TStringList.Create;
  f2 := TStringList.Create;
  delim := ' ';
  AssignFile(F, cFileName);
  Reset(F);
  try 
    Readln(F, S);
    while (S <> '') do
    begin
      iPos := Pos(delim, S);
      if Pos(delim, S) > 0 then   
      begin
        s1 := Copy(S, 0, iPos);
        s2 := Copy(S, iPos+1, Length(S));
        f1.Add(s1);
        f2.Add(s2);
      end;
      Readln(F, S);
    end;
    f1.SaveToFile(cFile1);
    f2.SaveToFile(cFile2);
  finally
    CloseFile(F);
    f1.Free;
    f2.Free;
   end;
end;
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.