![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jan 2008
Адрес: Земля
Сообщений: 178
|
Скажите, пожалуйста, у метода ByteArray.readMultiByte есть какие-то ограничения?
Он у меня почему-то обрезает строку (с 100913 до 541 строк, т.е. данная строковая переменная содержит 541 символ возврата каретки "\n" вместо положенных 100913) ![]() Т.е. гружу файл в data:ByteArray и просто перевожу в строку: все работает нормально, разбиваю строку в массив: массив содержит 100913 элементов А если читаю как кодировку "windows-1251" (файл приходит в этой кодировке) и перевожу в массив: var ctext:String=data.readMultiByte(data.length ,'windows-1251'); var carray:Array=ctext.split('\n'); В чем проблема не пойму? |
|
|||||
|
Modus ponens
|
Я думаю, есть смысл спросить тут:
http://bugs.adobe.com/jira
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jan 2008
Адрес: Земля
Сообщений: 178
|
Разобрался.
В приходящем файле был какой-то "загадочный" символ, соответствующий байту с номером 6295 в массиве data, на нем перекодирование (data.readMultiByte(data.length ,'windows-1251')) и обрывалось. Кажется это был 0x00, в "блокноте" выглядел как пробел в конце строки. Удали его и всё заработало. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Любая строка обрывается на нулевом байте.
|
|
|||||
|
Конец строки это скорее 13 чем 0.
А 0 это уже ближе к концу файла ![]() |
|
|||||
|
стервочка (я мужик)
|
конец строки это 0. а 13 это перенос.
|
|
|||||
|
ДА! Интересно. Спасибо, понял.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 15:01. |
|
|
« Предыдущая тема | Следующая тема » |
|
|