Форум: "Потрепаться";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];
ВнизСоитие файлов Найти похожие ветки
← →
Zhenka (2003-08-11 12:30) [0]Имеется два файла (ф1 и ф2).
В первом файле содержится информация о нахождении линии на плоскости, но её координаты предоставлены в виде массива точек по Х и У.
Файл 1.1
6
27946.417969 30403.597656
27951.863281 30400.990234
27953.966797 30401.794922
27954.777344 30403.845703
4
27159.666016 30116.859375
27156.517578 30111.011719
27155.744141 30101.615234
27163.835938 30096.910156
27167.560547 30092.800781
11
27330.033203 30850.064453
27327.908203 30845.574219
27316.857422 30833.109375
27307.679688 30819.875000
27302.611328 30814.736328
Все целые числа это номера линии, все дробные - координаты точек соответственно
Во втором файле содержатся координаты линии по оси Z (для всех точек одной линии координаты по оси Z – одинаковые.) Координаты по оси Z упорядочены в соответствии с номерами линий первого файла.
Файл 2
12.445
44.678
19.186
Надо соединить данные из двух файлов таким образом
6 27946.417969 30403.597656 12.445
6 27951.863281 30400.990234 12.445
6 27953.966797 30401.794922 12.445
6 27954.777344 30403.845703 12.445
4 27159.666016 30116.859375 44.678
4 27156.517578 30111.011719 44.678
4 27155.744141 30101.615234 44.678
4 27163.835938 30096.910156 44.678
4 27167.560547 30092.800781 44.678
11 27330.033203 30850.064453 19.186
11 27327.908203 30845.574219 19.186
11 27316.857422 30833.109375 19.186
11 27307.679688 30819.875000 19.186
11 27302.611328 30814.736328 19.186
Подскажите, пожалуйста, как это сделать.
Уже второй день. Мучаюсь. Спасибо
← →
MBo (2003-08-11 12:46) [1]Subj заинтриговал...
← →
pasha_golub (2003-08-11 12:54) [2]А что ты уже намучил? Покажи, может общими усилиями домучаем :-)
← →
Palladin (2003-08-11 13:03) [3]
var
i,cs:integer;
csi:string;
f1,f2,res:tstringlist;
begin
f1:=TStringList.Create;
f2:=TStringList.Create;
res:=TStringList.Create;
f1.loadfromfile("c:\f1");
f2.loadfromfile("c:\f2");
cs:=0;
csi:="";
for i:=0 to f1.count-1 do
begin
if strtointdef(trim(f1[i]),-1)=-1 then res.add(csi+#9+f1[i]+#9+f2[cs-1]) else
begin
cs:=cs+1;
csi:=trim(f1[i]);
end;
end;
res.savetofile("c:\f3");
res.free;
f1.free;
f2.free;
end;
← →
Zhenka (2003-08-11 13:43) [4]2 Паладин
> if strtointdef(trim(f1[i]),-1)=-1
наверное так
if strtointdef(trim(f1[i]),-1)=1
Но вот напасть сохранять не хочет.
и помоему пример не делает то что надо. на выходе должнобыть 4 столбца.
← →
Palladin (2003-08-11 13:47) [5]
> Zhenka © (11.08.03 13:43) [4]
именно так как я написал
← →
Palladin (2003-08-11 13:48) [6]на выходе столбца четыре будет
← →
Zhenka (2003-08-11 14:03) [7]если так, то на индексы ругается
аесли минус убрать то не сохраняет.
попробуй сам!!!
У меня ничерта не работает
← →
Zhenka (2003-08-11 14:20) [8]Господа пеодскажите пожалуйста ещё что нибудь
← →
Palladin (2003-08-11 14:31) [9]ни на что у меня не ругается...
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c