Чтобы использовать двоичную сериализацию и десериализацию в Java, сначала вам необходимо ввести соответствующие пакеты в java.io или напрямую написать import java.io.*;
Ниже для удобства записи операций мы используем метод копирования файлов и выдачи исключений для записи
Скопируйте код кода следующим образом:
public void test6() выдает IOException {
byte[] b = новый байт[1024];//Определение массива байтов, буфера
FileInputStream in = new FileInputStream("E://logo.gif");//Создаем объект входного потока
FileOutputStream out = new FileOutputStream("E://My.gif");//Создаем объект выходного потока
DataInputStream input = new DataInputStream(in);//Создаем входной двоичный поток
DataOutputStream dout = новый DataOutputStream(out);//Создаем выходной двоичный поток
int num = input.read(b);//Читаем двоичный файл в b
в то время как (число != -1) {
dout.write(b, 0, num);//Записываем прочитанный массив в выходной поток
num = input.read(b); // Читаем еще раз
}
//Закрываем все объекты потока по порядку
ввод.закрыть();
доут.закрыть();
в.закрыть();
выход.закрыть();
System.out.println("Копирование успешно!");
}
Код сокращен только для справки!
C# использует операции двоичной сериализации и десериализации. Сначала введите пространство имен, используя System.Runtime.Serialization.Formatters.Binary. Кроме того, в классе пользовательских классов, включающих сериализацию, добавьте класс индикатора [Serializable] выше.
Пример:
[Сериализуемый]
Скопируйте код кода следующим образом:
публичный класс PlayManager
{
/// <сводка>
///Сериализация и сохранение данных
/// </сводка>
публичная недействительность Сохранить()
{
FileStream фс = ноль;
пытаться
{
fs = new FileStream("Путь для сохранения файла", FileMode.Create);
BinaryFormatter bf = новый BinaryFormatter();
bf.Serialize(fs, объект, который нужно сохранить);
}
поймать (исключение ex)
{
MessageBox.Show(ex.Message);
}
окончательно
{
фс.Закрыть();
}
/// <сводка>
/// Загрузить информацию о сериализации
/// </сводка>
публичная недействительная нагрузка()
{
FileStream фс = ноль;
пытаться
{
fs = новый FileStream("Путь к файлу", FileMode.OpenOrCreate);
BinaryFormatter bf = новый BinaryFormatter();
Получение объекта = (тип объекта)bf.Deserialize(fs); //Принудительное преобразование типа
}
поймать (исключение ex)
{
MessageBox.Show(ex.Message);
}
окончательно
{
фс.Закрыть();
}
Это использование сериализованных файлов в C#. На самом деле, это довольно просто. Если вы не добавляете try-catch-finally, потребуется всего четыре предложения кода.
Друзья, прошедшие мимо, вы поняли? Если не понимаете, можете задавать вопросы!