Разделить текст на куски по определенному количеству байт
-
Приветствую. Нужен совет.
Дано:
Большие текстыТребуется:
Разделять их на куски определенного (одинакового) количества байт.Варианты:
- Из одного большого текста вырезаются по очереди в цикле куски определенного количества байт, затем кладутся в переменную
- Один большой текст разделяется на большое количество текстовых файлов, в которых текст определенного количества байт
Буду благодарен за советы. Нашел вот такой NPM модуль, но не уверен что он подходит и как его можно приспособить https://www.npmjs.com/package/utf8-binary-cutter
-
@romanbiz Вам вариант реализации, или совет какой способ лучше? Потому что оба ваших варианта были на форуме.
-
@Fox Нашел, спасибо http://community.bablosoft.com/topic/3523/как-обрабатывать-большой-объем-данных/6
А не подскажете как можно подсчитать количество байт в тексте при помощи JS и положить в переменную?
-
@Fox Пока нашел только вариант с NPM https://github.com/substack/utf8-length
-
String.prototype.byteLength = function(){ var str = this, length = str.length, count = 0, i = 0, ch = 0; for(i; i < length; i++){ ch = str.charCodeAt(i); if(ch <= 127){ count++; }else if(ch <= 2047){ count += 2; }else if(ch <= 65535){ count += 3; }else if(ch <= 2097151){ count += 4; }else if(ch <= 67108863){ count += 5; }else{ count += 6; } } return count; };
var str = "Строка"; count = unescape(encodeURIComponent(str)).length
Вот тестовый скрипт.
-
@romanbiz Проект подсчитывает количество байт в unicode тексте.