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

Вниз

Форматирование тектового файла.   Найти похожие ветки 

 
mak_other_user   (2004-03-06 18:45) [0]

Есть текстовый файл состоящий из двузначных чисел(новое число на новой строке), каким образом можно сделать так что бы в строке было не одно число, а допустим 10, ну соответсвенно на следующей следующие 10. Сам как ни делал - всегда получается файл состоящий из чисел вообще без разделителей.


 
Алхимик ©   (2004-03-06 18:49) [1]

Открываешь файл
Читаешь 10 чисел в строку, записываешь в другой файл,
читаешь след. 10 чисел , записываешь...
И так до конца файла. :)


 
Pa5ha   (2004-03-06 18:50) [2]

Параллельно читаете с файла и пишите в другой наверно? Так вот, надо так: write(f,data," ");, Где f-файл в который пишется, data - число, " " - пробел. А неплохо бы код, мы бы подправили.


 
Serge ©   (2004-03-06 19:00) [3]

Гляньте-ка на это - может поможет

var f : Textfile;
i,cnt : smallint;

begin
AssignFile(F, "Х:\123.dat");
Rewrite(F);
cnt:=0;
For i:=0 to 100 do
begin
if i > 10 then
begin
inc(cnt);
write(F, i, #9);
if cnt = 10 then begin writeln(f); cnt:=0; end;
end;
end;
CloseFile(F);
end;


 
Sphinx ©   (2004-03-06 19:01) [4]

Если Вам не надо их читать и править примените типизированный формат File Of Byte (Word, Integer) к примеру. Он числа подряд запишет.
Если я конечно вопрос правильно понял.


 
mak_other_user   (2004-03-06 19:03) [5]

ок, ща восстановлю, а то затёр уже, а делал всё приблизительно так:

For I:=1 to 100 do //(Пытался даже через while not EOF)
 begin
     for N:=1 to 10 do
         begin
         ReadLn(F,ReadStr);
         StrForm:=StrForm+ReadStr;
         end;
     StrForm:=StrForm+#13;
     writeln(S,StrForm);
     StrForm:="";
 end;


 
Алхимик ©   (2004-03-06 19:06) [6]

А если в файле < 1000 записей случится лажа.


 
mak_other_user   (2004-03-06 19:13) [7]

2 Serge
Ваш код конвертнул таблицу в:
11 12 .. 20
..
91 92 .. 100


 
TButton ©   (2004-03-06 19:14) [8]

если файл текстовый

src: TStringList;
res: TStringList;
...
res:=TStringList.Create;
src:=TStringList.Create;
src.LoadFromFile("yourfile.txt");
for i:=0 to src.Count div 10 do
begin
 s:="";
 for j:=0 to 9 do
   if i*10+j<src.Count then s:=s+src[i*10+j];
 res.Add(s);
end;
res.SaveToFile("yourfile.txt");
res.Free;
src.Free;
Halt(0);


лол. дописал код, нажал F9... рефлекс)
вобщем я не проверял (хотя пытался:)), но имхо должно работать.


 
serge ©   (2004-03-06 19:16) [9]

>mak_other_user   (06.03.04 19:13) [7]
А он именно это и должен делать - для того написан :) - я же пытался показать Вам разделение чисел.


 
mak_other_user   (2004-03-06 19:18) [10]

2 serge ясненько - пасибо,
2 TButton - thanks ща протещу


 
mak_other_user   (2004-03-06 19:31) [11]

2 TButton - Код замечательно работает :)



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

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

Наверх




Память: 0.49 MB
Время: 0.031 c
1-1078919810
Ш-К
2004-03-10 14:56
2004.03.28
Bin to XML


14-1077781096
MPS
2004-02-26 10:38
2004.03.28
Сбойные блоки на харде - что делать???


1-1078932225
В л а д и м и р
2004-03-10 18:23
2004.03.28
Как прочитать слово из середины предложения?


1-1078387834
Volodya_
2004-03-04 11:10
2004.03.28
Замена подстроки


3-1077132078
Andrey V.
2004-02-18 22:21
2004.03.28
ИбКонсоль не ест пароль.