Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Считывание данных из txt Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
Dudi



Зарегистрирован: 03.02.2010
Сообщения: 25

СообщениеДобавлено: Вс Мар 07, 2010 3:56 am Ответить с цитатой Вернуться к началу

С какой скоростью Ами может считывать данные из txt ?
Можно ли считывать данные выборочно, задавая номер строки и колонку ?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Вс Мар 07, 2010 9:10 am Ответить с цитатой Вернуться к началу

Код:

С какой скоростью Ами может считывать данные из txt ?

Это не знаю. В принципе наверное можно как то померить.... В AFL editor в меню Tools есть инструмент Code Check & Profile. Он показывает время выполнения каждой функции...
Код:

Можно ли считывать данные выборочно, задавая номер строки и колонку ?

Можно только последовательно читать все строки (строка читается целиком). Ничто не мешает остановиться на нужной. Потом из неё можно выбрать нужную колонку. Только так.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Dudi



Зарегистрирован: 03.02.2010
Сообщения: 25

СообщениеДобавлено: Вс Мар 07, 2010 6:27 pm Ответить с цитатой Вернуться к началу

000 писал(а):
[code]
Можно только последовательно читать все строки (строка читается целиком). Ничто не мешает остановиться на нужной. Потом из неё можно выбрать нужную колонку. Только так.


Вот например открыли файл функцией fopen() для чтения, прочли строки(их там несколько штук), а как выбрать нужную строку и колонку в строке ?
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Вс Мар 07, 2010 6:39 pm Ответить с цитатой Вернуться к началу

Строки читаются последовательно. Соответственно если прочитал строку последовательно 5 раз, то это 5-я строка.
Типа так
Код:

fo = fopen( "file.txt" , "r");

for(i = 1; i <= 5; i++) {
  str = fgets(fo);
  if(feof(fo) AND i < 5) {
    i = 6;
    str = "";
  }
}

fclose(fo);

А уже затем из строки можно выделять нужный кусок. Зависит от формата строки.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Dudi



Зарегистрирован: 03.02.2010
Сообщения: 25

СообщениеДобавлено: Вс Мар 07, 2010 10:46 pm Ответить с цитатой Вернуться к началу

000 писал(а):
А уже затем из строки можно выделять нужный кусок. Зависит от формата строки.


Строка такого формата: ДАТА;ВРЕМЯ;ДАННЫЕ (разделитель колонок ; )
вот эти самые ДАННЫЕ из крайней правой колонки и надо захватить.
А как указать нужную колонку с строке ?
Я нашел функцию StrExtract( list, item ) но написано что она извлекает элемент из строки разделенной запятыми, а у меня не , а ;
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Вс Мар 07, 2010 10:52 pm Ответить с цитатой Вернуться к началу

Если в тексте запятые не встречаются, то имхо проще всего сперва заменить в прочтенной строке ";" на "," при помощи StrReplace(), а потом пользоваться StrExtract для извлечения нужной части.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen