Форум программистов, компьютерный форум, киберфорум
Java: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
4 / 4 / 1
Регистрация: 17.09.2013
Сообщений: 179

Правильность использования входных и выходных потоков с Json, Base64

28.03.2015, 17:46. Показов 938. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте =)
Недавно начал работать с сетями на Джаве, однако возник ряд вопросов.
Буду очень признателен за помощь)

Мой основной вопрос - как принято пересылать текст?
На данный момент я делали поток следующего вида
Java
1
2
3
4
        in = new BufferedReader(new InputStreamReader(
                    socket.getInputStream()));
        out = new PrintWriter(socket.getOutputStream(), true);
           System.out.println("the first address is " + socket.getInetAddress());
Если пересылать отдельные данные примитивных типов - все работает отлично.
Однако, насколько я понял,необходимо пересылать данные в другом виде, например, в формате json.
Также Json бы позволил пересылать информацию для объектов и просто массивы примитивных типов.
Однако, если я пересылаю массив(переведенный в гсон) через Принтрайтер, то получатель получает только [.
Схожая ситуация возникает и после перевода в Base64(с помощью Апач Коммонс), не могу декодировать после пересылки.(Все эти вещи работают нормально,если не пересылать данные).

Собственно, вопрос.
Как решать такие вещи ПРАВИЛЬНО? Рабочую программу я написал, но хотелось бы избежать плохого кода.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.03.2015, 17:46
Ответы с готовыми решениями:

Описание входных и выходных данных
Всем привет! Где в данной программе находятся входные и выходные данные? Заранее спасибо! program SeaWar; uses Graph,crt; var...

Описание входных и выходных данных
Описать входные и выходные данные(что вводим и что выводим).Буду очень благодарен кто выручит. uses crt; var m:array of...

Описание входных и выходных данных кода
Помогите написать описание входных и выходных данных этого кода

1
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
30.03.2015, 15:25
Использовать Reader/Writer для обмена информации - не самая лучшая идея. Вы ограничиваете протокол общения только текстом.

Рекомендую испозьвать DataInputStream/DataOutputStream. Там есть методы readUTF/writeUTF - они читают/записывают строку (как объект String) - целиком. Со всеми переносами и т. д.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.03.2015, 15:25
Помогаю со студенческими работами здесь

Не могу создать файлы входных и выходных данных
Не понимаю что неправильно в открытии и создании input.txt и output.txt В универе на линуксе не надо писать путь а просто FILE *in; ...

Определить векторы состояния, входных и выходных переменных системы
Добрый день. Помогите, пожалуйста, определить вектора входных, состояния, выходных переменных системы, а также матрицы параметров в...

Описание входных и выходных параметров программы, блок-схема
помогите я больше не могу( у меня есть код Var A,B,C,D : TPoint; k1,b1,k2,b2 : Extended; s : String; begin If...

Имена входных и выходных файлов задаются через аргументы командной строки
Как программе передать аргументы через командную строку? Приложение консольное. Насколько я понимаю аргументы придут в main в массиве...

Спектральные преобразования входных и выходных сигналов в элементарных звеньях радиотехнических цепей
Добрый вечер. Делаю по формулам расчеты, и что-то видно не так записываю, помогите пожалуйста исправить ошибки, почему не выводятся...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru