Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: чтение из файла на perl  (Прочитано 8651 раз)
0 Пользователей и 1 Гость смотрят эту тему.
vika
Постоялец

ru
Offline Offline
Пол: Женский

« : 19-07-2012 23:21 » 

Собственно, ввиду того, что многие браузеры сейчас отступили от стандартов, т.е., черт ногу сломит разбираться в тонкостях и генерировать рандомный ua_agent, что является заманчивым с точки зрения экономии памяти, т.к. не надо в память грузить большие листы, возник вот какой вопрос....
Пусть у меня есть 70 мб данных, к примеру. Загрузив такой кусок в память в стандартном случае, я ее изрядно загажу, если еще и потоки, то скрипт вылетит. Можно ли сделать вот как, не грузить все в память, а рандомно выбирая строку каждый раз обращаться к этому файлу, просто, к случайной строке в этом файле...
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 20-07-2012 04:19 » 

Почему же нельзя? Можно. Только надо знать позиции и длины строк, а это, по сути, уже индексная метаинформация. Также надо как-то адресовать строки, например, по порядковым номерам. Лучше используй базы данных - там это уже все до тебя продумали. Изучай в этом направлении. В Perl используется модуль DBI и драйвера баз данных DBD::*. Например, если у тебя одно чтение, то SQLite3 тебя вполне устроит.
В Perl также есть связывание (tie), позволяющее написать прослойку, которая позволит обращаться к таблице БД как к хешу. Но это годится только если не используются реляционные отношения внутри базы, либо используется фиксированные отношения. Чтобы не запутаться, пока об этом не думай. Лучше читай мануал по DBI.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
vika
Постоялец

ru
Offline Offline
Пол: Женский

« Ответ #2 : 21-07-2012 01:42 » new

Спасибо
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines