Форум: "Основная";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];
ВнизФорматирование тектового файла. Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.036 c