Сериализирую объект в файл на Android таким образом:
FileOutputStream fos = getApplicationContext().openFileOutput("order.dat", Context.MODE_PRIVATE);
ObjectOutputStream oos = new ObjectOutputStream(fos);
order = new Order(serverPass, purchase.getText().toString(), new Date(), name.getText().toString(), logInEmail, null, null, null, listSelectNom, null, listSelectIt);
oos.writeObject(order);
oos.flush();
oos.close();
fos.close();
final File file = new File(getFilesDir(), "order.dat");
Далее передаю файл - file через сокет на ПК. ПК в свою очередь принимает и десериализирует файл обратно в объект:
File file = new File("order.dat");
FileOutputStream fOutput = new FileOutputStream(file);
BufferedInputStream bufferInput = new BufferedInputStream(clientSocket.getInputStream());
int fileSize = bufferInput.read(buffer);
fOutput.write(buffer, 0, fileSize);
FileInputStream fileInput = new FileInputStream(file);
ObjectInputStream objectInput = new ObjectInputStream(fileInput);
order = (Order) objectInput.readObject();
При этом файл десериализируется неправильно. Если файл десереализирую в Android то всё проходит успешно:
Order order1;
FileInputStream fis = new FileInputStream(file);
ObjectInputStream is = new ObjectInputStream(fis);
order1= (Order) is.readObject();
is.close();
Что я делаю неправильно? Файл принимается нормально, ошибок при отправке и приеме не выдаёт. Как сделать правильную десереализацию в приложении на ПК?
Вомзожно проблема в Context.MODE_PRIVATE
int MODE_PRIVATE File creation mode: the default mode, where the created file can only be accessed by the calling application (or all applications sharing the same user ID).
Файл созданный с такой меткой может быть открыт только тем же приложением или другим приложение с таким же ID
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
У меня есть два потока в одном потоке, который запустился сразу имеется такой код
Как лучше реализовать данную задачу:
Верстаю письма на фреймворке Foundation for emailsНо после верстки идут этапы тестирования и отправки
в Netbeans есть замечательная возможность форматирования кода, команда находится здесь: Источник -> Формат (ALT+SHIFT+F)