0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 6
1

Преобразование byte[] в int[]

04.06.2012, 13:27. Показов 7654. Ответов 11
Метки нет (Все метки)

Передаю по сети массив int'ов
int[] -> byte[] делаю так:
Java
1
os.write(data.toString().getBytes());
А как преобразовать byte[] обратно в int[] не знаю
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2012, 13:27
Ответы с готовыми решениями:

Из 4-х Byte в int
Здравствуйте!!! Програмлю для себя программу, которая читает любой файл и выводит его в виде...

Int в byte
как поместить Integer переменную в массив байт? (желательно с примером)

Упаковка int в byte[]
Стоит задача, передать параметры через OutputStream. Всего три параметра(int), я хочу их передать...

String -> byte -> int
Доброго времени суток, возможно ли представить строку (пример) "cyberforum" в виде целочисленной...

11
2585 / 2258 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
04.06.2012, 14:06 2
можно явно
Java
1
2
3
4
5
6
7
 ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("test.ser"));
        out.writeObject(new int[] {0, 1, 2, 3, 4, 5, 6, 7, 8, 9});
 out.flush();
        out.close();
 ObjectInputStream in = new ObjectInputStream(new FileInputStream("test.ser"));
        int[] array = (int[]) in.readObject();
        in.close();
0
81 / 81 / 8
Регистрация: 10.06.2011
Сообщений: 258
04.06.2012, 14:11 3
По сети передаётся не массив int'ов, а просто String. Или нужно его в ручную парсить назад или действительно передавать int-массив
0
2585 / 2258 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
04.06.2012, 14:17 4
Цитата Сообщение от XHelp Посмотреть сообщение
По сети передаётся не массив int'ов, а просто String. Или нужно его в ручную парсить назад или действительно передавать int-массив
зачем вам стринг если передаются байты?
0
0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 6
04.06.2012, 20:43  [ТС] 5
попытался сделать как сказал mutagen вылазит такое сообщение: java.net.SocketOutputStream cannot be cast to java.io.ObjectOutputStream
0
2585 / 2258 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
04.06.2012, 20:45 6
Цитата Сообщение от senbad Посмотреть сообщение
попытался сделать как сказал mutagen вылазит такое сообщение: java.net.SocketOutputStream cannot be cast to java.io.ObjectOutputStream
код покажите
0
0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 6
04.06.2012, 21:51  [ТС] 7
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
private void JPanelMouseDragged(java.awt.event.MouseEvent evt) {                                    
        if(possiblyMove){  
            Rectangle r =table1.mcu.move(evt.getX(), evt.getY());
            data[0]=evt.getX();
            data[1]=evt.getY();
          try {
          ObjectOutputStream out = socket.getOutputStream();
          out.writeObject(data);
           out.flush();
                        
            } catch (IOException ex) {  
               ex.printStackTrace();   }
            
            table1.repaint(r);
 
        }  
    }
0
2585 / 2258 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
04.06.2012, 21:55 8
поправлю вашу ошибку с стримом
Java
1
  ObjectOutputStream out = new ObjectOutputStream(socket.getOutputStream());
1
0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 6
04.06.2012, 21:56  [ТС] 9
Цитата Сообщение от mutagen Посмотреть сообщение
я не буду комментировать то, что у вас метод жёстко завязан на какие-то глобальные переменные, а просто поправлю вашу ошибку с стримом
Java
1
  ObjectOutputStream out = new ObjectOutputStream(socket.getOutputStream());
Спасибо!
0
81 / 81 / 8
Регистрация: 10.06.2011
Сообщений: 258
05.06.2012, 20:59 10
Цитата Сообщение от mutagen Посмотреть сообщение
зачем вам стринг если передаются байты?
Стринг как раз таки не к чему, что впринципе подразумевалось моим постом. Просто код в первом посте передавал именно стринг, а не массив.
0
2585 / 2258 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
05.06.2012, 21:19 11
Цитата Сообщение от XHelp Посмотреть сообщение
Стринг как раз таки не к чему, что впринципе подразумевалось моим постом. Просто код в первом посте передавал именно стринг, а не массив.
насколько я знаю стринги вот такой код
Java
1
data.toString().getBytes()
выдаёт байты на передачу, может просто ТС делал ненужные преобразования объекта в строку чтобы потом погнать её как байты (такая себе псевдо сериализация в стиле JSON )
0
81 / 81 / 8
Регистрация: 10.06.2011
Сообщений: 258
06.06.2012, 17:04 12
Да, всё верно. Но я хотел подметить, что передача идёт не самого array-объекта, а его String-репрезентации. Но вопрос вроде уже отвечен, поэтому что я хотел сказать уже не важно
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2012, 17:04
Помогаю со студенческими работами здесь

int vs byte or short
Всем привет. Вот такой код public class Test { public static void main(String args) {...

Перевод типа из byte в int и в string
Здравствуйте! Первоначально необходимо было перевести значение из типа byte в string. Прямого...

Преобразовать byte[] в float или int
Имеется массив типа byte, необходимое мне значение занимает 2 байта, нужно эти 2 байта...

Преобразование к int
Здравствуйте, есть следующая проблема: Пробегая по циклу, я вывожу из таблицы все значения ,...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru