Показать сообщение отдельно
  #2  
Старый 24.10.2017, 03:57
Mithgol the Webmaster
Guest
 
Сообщений: n/a
По умолчанию Пример кода чтения баз

Mithgol the Webmaster написал(а) к Denis Chernayev в Oct 17 17:44:12 по местному времени:

Так было 09:45 22 Oct 17 написано от Denis Chernayev к All:

DC> Коллеги... Можете показать самый примитивный код (на С, например)
DC> для чтения фидошной (например, сквидовой) базы эхи? На уровне
DC> ///////////////////////////////
DC> include "smth.h"

DC> SQBase base = ReadBase(char pathToBase);

DC> для каждого msg из base цикл
DC> printf("....", msg.Subject);
DC> конец цикла
DC> ///////////////////////////////

DC> Попытался прочитать исходники эхотага - там слишком много кроссрефов и
DC> слишком мало комментариев...

DC> ЗЫ. Да, я крайний раз писал на С 20 лет назад, так что навыки чтения
DC> чужого кода малость утрачены...

Если сказано, что 'на Си, например', то*тогда, значит, можно и*не*на*Си? ── приведу на*JavaScript. Читай вот*этот открытый исходный*код на*Гитхабе:

https://github.com/Mithgol/fido2rss/...e.js#L183-L341

Это*код, читающий несколько последних сообщений в*базе Squish или*JAM с*выводом в*RSS. (Код вполне*реальный, используется не*первый*год при*создании RSS-представления эхоконференции Ru.Blog.Mithgol.)


Так*как код не*самый примитивный, то*можешь при*первом*чтении пропустить следующие фрагменты*его, ограничившись вот*каким беглым*пониманием их*смысла:

*) в*строках с 212 по 236 ведётся создание FGНI URL прочитанного*сообщения;

*) в*строках с*238 по*256 ведётся создание даты*сообщения, для*RSS*подходящей;

*) в*строках с*261 по*288 ведётся настройка преобразователя эхопочты в*НTML;

*) в*строке 290 вызвана функция преобразования UUE-кодированных иллюстраций
в*фидонетовские*руны с*сохранением декодированных файлов*иллюстраций
в*P2P-распределённой файловой*системе IPFS;

*) в*строке 293 вызвана функция, сохраняющая в*IPFS всё*сообщение;

*) в*строках с*304 по*315 ведётся создание элемента RSS-потока из*результатов
предшествующих действий.


Кстати, база не*сквидовая, а*сквишёвая.


(Хорошо будет, если тебе пришлют ещё*более простой код, ещё*более пригодный послужить наглядным*примером. Однако*пока*что никто не*сподобился.)


Фидонет будет великим и гипертекстовым! [Ru.Mozilla] http://Mithgol.Ru/
Mithgol the Webmaster. [Братство Нод] [Team А я меняю subj]

... Своя мысль кажется новой, чужая ── знакомой. (из чужих ориджинов)
--- Знаешь ли ты, Denis, что "суёт" не всегда пишется через "ё"?
Ответить с цитированием