|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.02.2007, 19:03 | #1 |
Пользователь
Регистрация: 01.11.2006
Сообщений: 63
|
Lseek
какую библиотеку использует процедура Lseek???
lseek(mod_dev,12,1); mod_dev - идентификатор файла 12 - на сколько позиций сдвинуть влево 1 - сдвинуть относительно текущей позиции Весь инет перерыл, так и не нашел..... И еще : если Lseek сдвигает влево, есть ли Rseek которая сдвигает вправо? |
17.02.2007, 00:28 | #2 |
Пользователь
Регистрация: 09.02.2007
Сообщений: 49
|
Просто seek(mov_dev,<на сколько сдвинуть>)
Свой среди чужих
Чужой среди своих |
17.02.2007, 00:51 | #3 |
Пользователь
Регистрация: 01.11.2006
Сообщений: 63
|
seek(mod_dev,12);
Ошибка: Incompatible types Скорее всего потому-что mod_dev : textfile; |
17.02.2007, 00:53 | #4 |
Пользователь
Регистрация: 01.11.2006
Сообщений: 63
|
ПРОШУ ПОМОШИ
*********************************** ********** Есть текстовый файл такой структуры: 2.0000E-03 -2.4032E-04 -9.3987E+01 6.5985E+01 -4.4732E+05 5.0000E-03 -2.4032E-04 -9.3987E+01 6.5985E+01 -2.7272E+05 8.0000E-03 -2.4032E-04 -9.3987E+01 6.5985E+01 -1.9964E+05 1.1100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -1.5526E+05 1.4100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -1.2847E+05 1.7100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -1.0956E+05 2.0100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -9.5503E+04 2.3100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -8.4639E+04 2.6100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -7.5993E+04 2.9100E-02 -2.4032E-04 -9.3987E+01 6.5985E+01 -6.8947E+04 ................................... ................................... ................................... ... ................................... ................................... ................................... ... Хочу загнать его в массив! сначала читаю первый столбец у[0,ii], потом помещаю ФУ в начало файла reset(mod_dev), и даю смещение на 12 символов вправо TextSeek(mod_dev,12), чтобы перейти ко второму столбцу и т.д.. Но выходит так что он все время читает первый столбец! Почему? Вроде в TextSeek все как надо........ быть может for i:=0 to 3 do begin for ii:=0 to 1000 do begin readln(mod_dev,y[i,ii]); end; reset(mod_dev); TextSeek(mod_dev,12); end; procedure TextSeek(var F: TextFile; Position: Integer); var Handle: Integer; NewPosition: DWORD; begin Handle := PInteger(@F)^; NewPosition := SetFilePointer(Handle, Position, nil, FILE_CURRENT); end; |
17.02.2007, 01:06 | #5 |
Пользователь
Регистрация: 01.11.2006
Сообщений: 63
|
Торможу. значит пора отдохнуть
NewPosition := SetFilePointer(Handle, Position, nil, FILE_BEGIN); и TextSeek(mod_dev,12*(i+1)); Теперь все в норме |