Обсуждение:feldsher
0 (0)
Обсуждение:feldsher ( Обсуждение примера 07.08.2016 06:22 )
5(1)flLevenshteinDistance(str1:String, str2:String)
Возвращаемое значение: целое, расстояние Левенштейна между строками str1 и str2.
flUrlCreateFromPath(path:String)
Возвращаемое значение: строка, URL образованный из пути path.
flFormDate(format:String, date:Date)
Переводит дату в строку по заданному формату. При ошибке преобразования даты возвращается значение типа V_UNDEF.
format — строка с форматом, описание см. функцию strftime.
date — дата, если отсутствует, берётся текущее время, функция принимает значения типа Date и DateTime.
flIConv(code_in:String, code_out:String, string:String)
Перекодирует строку string из кодировки code_in в кодировку code_out.
Возвращаемое значение: строка, результат перекодировки.
Из кодировок, которые могут пригодиться, стоит упомянуть CP1251, CP866, UTF-8. Если в качестве кодировки указан null, принимается CP866.
Для работы требуется библиотека iconv. Ограничения на сайте R-Style не позволяют включить требуемые dll в архив. Надо скачать архив http://gnuwin32.sourceforge.net/downlinks/libiconv-bin-zip.php из папки bin извлечь две dll (libiconv2.dll и libcharset1.dll) и подложить их в obj или в путь. Если на машине в пути есть аналогичные, то эти можно не подкладывать.
flStringPrepareToJson(string:String)
Гибридная функция. Подготавливает строку к использованию в JSON формате. Специальные символы экранируются. Кирилица и латиница остются нетронутыми. Остальные символы кодируюся в unicode в JSON формате (\uXXXX). Такая перекодировка рассчитана на то, что строка будет передана средствами RSL в ActiveX объект и в процессе этой передачи произойдёт перекодировка в unicode. Таким образом, в результате этих двух трансформаций получится строка в JSON формате с читаемой кирилицей и экранированными стрёмными символами. Сценарий использования — для ручного сбора JSON. Пример:
adodbRecordSet.Fields.Item("response_json").Value=
"{\"ground\":\""+flStringPrepareToJson(postdoc.rec.Ground)+"\"}";
flSHA256(string:String)
Возвращает строку кодированную в шестнадцатиричном виде со значением хэш-функции по алгоритму SHA256 от входной строки.
flHash(function_name:String, string:String)
Функция возвращает хэш строки string. Алгоритм расчёта хэшфункции задаётся параметром function_name. Допустимые значения: blake2b512, blake2s256, md4, md5, mdc2, rmd160, sha1, sha224, sha256, sha3-224, sha3-256, sha3-384, sha3-512, sha384, sha512, sha512-224, sha512-256, shake128, shake256, sm3. Если в качестве первого параметра передан null, то используется md5. Для работы необходима библиотека libcrypto от openssl.
flUrlDecode(string:String)
Раскодирует строку string, закодированную URL encode, также преобразует из UTF8 в CP866.
Возвращаемое значение: строка, результат перекодировки.
flMemSpeedTest(size:Integer, count:Integer, block_size):Double
Замеряет скорость записи в оперативную память. Возвращает мегабайты в секунду в формате с плавающей запятой.
Параметры:
size — размер в байтах, по умолчанию 1Gb.
count — кол-во повторов, по умолчанию 3.
block_size — если указано и больше 0, то используется копирование из предварительного подготовленного блока размером block_size через memcpy.
Посмотреть пример
>> ОтветитьВ архив добавлены dll ( tema 13.11.2018 09:52 )
5(1)В связи с тем, что R-Style увеличила лимит на размер архива, появилась возможность включить в архив libiconv2.dll и libcharset1.dll, а не посылать за ними по ссылке.
>> Ответить+sha256 ( tema 22.11.2018 09:32 )
5(1)Not specified
>> ОтветитьРассчёт хэш-функции передан на аутсорс, за счёт этого список алгоритмов расширен ( tema 27.11.2018 01:16 )
5(1)blake2b512, blake2s256, md4, md5, mdc2, rmd160, sha1, sha224, sha256, sha3-224, sha3-256, sha3-384, sha3-512, sha384, sha512, sha512-224, sha512-256, shake128, shake256, sm3
>> Ответитьхэш-функции переезжают в новую библиотеку opsel, из этой в следующей сборке будут удалены ( tema 09.12.2018 18:17 )
5(1)Not specified
>> Ответить
добавлена функция flMemSpeedTest, замеряет скорость записи в оперативку ( tema 08.03.2024 20:23 )
3(2)Стал я продакшн сервер подозревать в тормозах, а админы сами тулзы для бенчмарков не ставят и другим не дают. Пришлось в dlm завернуть простенький тест скорости обмена с оперативкой
>> Ответить