|
|
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Подскажите может есть более лучший способ перегнать такое "[1,2,3,4,5,6,7,8, ...]" в массив байт? В данном случае в строке в массиве это байты. В гугле нашел такое решение. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Может более лучший способ такое сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 10:51 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
А найденный способ чем не устроил? Какие именно характеристики преобразования желаете улучшить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:17 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
TsyklopМожет более лучший способ такое сделать? Если вы планируете быть инженером, то "лучший" стоит конкретизировать. - Меньше кода? - Быстрее производительность? - Меньше памяти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:33 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Быстрее и меньше памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:36 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovА найденный способ чем не устроил? Какие именно характеристики преобразования желаете улучшить? Устраивает. НО может еще варианты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:37 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
TsyklopУстраивает. НО может еще варианты.Предполагая кодировки US-ASCII/UTF-8, берёте "символьную последовательность байт" и преобразуете её в "байтовую последовательность байт", используя битовые маски и сдвиги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:39 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Нашел вариант с Base64. В моём случае это передача файлов в чате. Получаю байты передаваемого файла и перегоняю в base64. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:41 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Может JSONParser.parse(String) любой либой которая это умеет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:47 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
BlazkowiczМожет JSONParser.parse(String) любой либой которая это умеет? Тоже вариант. Еще предлагали Gson использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:48 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
TsyklopBlazkowicz, Быстрее и меньше памяти. Это будет больше кода. Перебирваешь сиволы циклом, набиваешь их сразу в байты каким-нибудь не очевидным математическим преобразованием ASCII-кода цифр в байт. По пробелу\запятой переходишь к следующему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:49 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
TsyklopBasil A. Sidorov, Нашел вариант с Base64. В моём случае это передача файлов в чате. Получаю байты передаваемого файла и перегоняю в base64. Как обычно, проблема в одном, вопрос совершенно о другом. Base64 это +30% к длине данных. Вы в курсе, да? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:51 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
BlazkowiczTsyklopBasil A. Sidorov, Нашел вариант с Base64. В моём случае это передача файлов в чате. Получаю байты передаваемого файла и перегоняю в base64. Как обычно, проблема в одном, вопрос совершенно о другом. Base64 это +30% к длине данных. Вы в курсе, да? ну исходный вариант это не +30%, а + 3-5 раз если нужно передавать файлы по текстовому каналу, то лучше Base64 чем такой самодельный велосипед с квадратными колесами. IMHO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 11:58 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsevну исходный вариант это не +30%, а + 3-5 раз Новое слово в кодировании? https://en.wikipedia.org/wiki/Base64 The ratio of output bytes to input bytes is 4:3 (33% overhead) Leonid Kudryavtsevесли нужно передавать файлы по текстовому каналу, то лучше Base64 чем такой самодельный велосипед с квадратными колесами. IMHO А при чем тут велосипед? Просто есть более эффективные кодирования и способы передачи. Сейчас кодировать в Base64 в новых проектах вообще не актуально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 12:13 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsevну исходный вариант это не +30%, а + 3-5 раз Ааа, речь про JSON? Не допёр сразу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 12:14 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
BlazkowiczАаа, речь про JSON? Не допёр сразу. Если так посмотреть то в JSON формате будет больше символов чем Base64 из-за запятых и пробелов. Для сравнения проверил и то и то: JSON = ~150k символов Base64 = ~50k ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 12:19 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
TsyklopЕсли так посмотреть то в JSON формате будет больше символов чем Base64 из-за запятых и пробелов.Учитесь делать оценки, а то так и будете выдавать ложные (умо)заключения. base64 - регулярная схема, которая превращает каждые три байта в четыре символа. JSON требует от одного до трёх символов для кодирования каждого байта и нуждается в одном-двух символах-разделителях. Если исходный контент сжат, то значения всех байт примерно равновероятны. Тогда получаем, то 10/256 байтов будут закодированы одним символом, 90/256 - двумя и 156/256 - тремя символами: Код: plaintext 1. 2. С разделителями (только запятая или запятая и пробел) получаем 287 или 387 процентов относительно исходных байтов. То есть, примерно, трёх- или четырёхкратную избыточность. В лучшем случае (один символ на байт) получаем двух или трехкратную избыточность. В худшем (три символа на байт) получаем четырёх- или пятикратную избыточность. В случае base64, напомню, стабильные "плюс 34%" (134 процента кратности). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 12:50 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
И, кстати, если канал передачи "прозрачный восьмибитный", то HTTP-ный "Content-Coding: chunked", позволяет передавать бинарные данные с избыточностью, не превышающей 3/16, что меньше, чем 1/3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 12:54 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Может пойдём дальше? Зачем массив? Давайте Iterable или Stream. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 13:03 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
maytonМожет пойдём дальше? Зачем массив? Давайте Iterable или Stream.Насколько мне изменяет склероз, массив байт пригоден и для перечисления (итерирования) и для создания потока. Куда идти и, главное, зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 13:12 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Я говорю это ибо увидел кол-во символов того и того. Файл тот же самый. То бишь Вы советуете не Base64 а JSON? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 13:59 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
TsyklopТо бишь Вы советуете не Base64 а JSON?И как, простите, вы сделали этот странный вывод? P.S. Я, пожалуй, вообще воздержусь что-либо вам советовать ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 14:10 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovmaytonМожет пойдём дальше? Зачем массив? Давайте Iterable или Stream.Насколько мне изменяет склероз, массив байт пригоден и для перечисления (итерирования) и для создания потока. Куда идти и, главное, зачем? Это в трендах современного программирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 14:30 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovИ как, простите, вы сделали этот странный вывод? P.S. Я, пожалуй, вообще воздержусь что-либо вам советовать ... вывод? спросил у Вас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 15:08 |
|
||
|
JSON массив в виде строки в byte[]
|
|||
|---|---|---|---|
|
#18+
Маразм крепчает, мысли гнутся ... Я, пожалуй, пас - есть предел уровня неадекватности, который лично я готов обсуждать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2018, 15:46 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39647437&tid=2122038]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 267ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...