Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.11.26;
Скачать: [xml.tar.bz2];

Вниз

Нужна помощь   Найти похожие ветки 

 
Marat ©   (2006-11-08 08:29) [0]

Здравствуйте, мастера.
Вопрос такой.
Считываю текстовый файл.
var
 F: TextFile;
 S: string;
 i: integer;
begin
try
   AssignFile(F, "C:\Projects\Bazis\T2_20061101.txt");
   Reset(F);
SG.ColCount := 1;
SG.RowCount := 1;
while not EOF(F) do
begin
ReadLn(F, S);
OemToChar(@S[1],@S[1]);
SG.Col := 0;
while Pos(" ", S) > 0 do
begin
SG.Cells[SG.Col, SG.Row+1] := Copy(S, 1, Pos(" ", S)-1);
Delete(S, 1, Pos(" ", S));
if SG.ColCount - SG.Col = 1
then
begin
SG.ColCount := SG.ColCount + 1
end;
SG.Col := SG.Col + 1;
end;
SG.Cells[SG.Col, SG.Row+1] := S;
SG.RowCount := SG.RowCount + 1;
SG.Row := SG.Row + 1;
end;
SG.RowCount := SG.RowCount - 1;
finally
CloseFile(F);
end;
этот алгоритм верен для файла, в котором слова разделены пробелом.
А у меня файл, в котором между словами может быть 1-8 пробелов. Как быть?


 
Орион ©   (2006-11-08 08:51) [1]

есть такая функция TrimLeft


 
MBo ©   (2006-11-08 08:58) [2]


procedure TForm13.Button2Click(Sender: TObject);
var
 List, TempList: TStringList;
 s: string;
 i: Integer;
begin
 List := TStringList.Create;
 TempList := TStringList.Create;
 List.LoadFromfile("E:\a.txt");
 SG.RowCount := List.Count;
 for i := 0 to List.Count - 1 do begin
   s := List[i];
   OemToCharBuff(PChar(s), PChar(s), Length(s));
   TempList.CommaText := s;
   if SG.ColCount < TempList.Count then
     SG.ColCount := TempList.Count;
   SG.Rows[i].Assign(TempList);
 end;
 List.Free;
 TempList.Free;
end;


 
Marat ©   (2006-11-08 12:22) [3]

Спасибо большое! Помогло!



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

Форум: "Начинающим";
Текущий архив: 2006.11.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.053 c
4-1152563763
incm
2006-07-11 00:36
2006.11.26
Как читать из файла открытого другой прогой на запись


2-1163083774
SerGoP
2006-11-09 17:49
2006.11.26
Нарастающий итог в столбце


15-1163092863
TUser
2006-11-09 20:21
2006.11.26
Размер djvu


15-1162672624
SeeD
2006-11-04 23:37
2006.11.26
Help для Zeoslib


2-1162768751
AlexeyT
2006-11-06 02:19
2006.11.26
ExtractIcon и показ иконки на тулбаре





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский