Java,C#使用二进制序列化、反序列化操作数据
java使用二进制序列化、反序列化的操作首先,要引入java.io下面相关包,或者直接写import java.io.*;
下面,为了书写操作的方便,采用复制文件,和throws声明异常的方式来写
public void test6() throws IOException {
byte[] b = new byte[1024];//定义字节数组,缓冲FileInputStream in = new FileInputStream("E:\\logo.gif");//创建输入流对象
FileOutputStream out = new FileOutputStream("E:\\My.gif");//创建输出流对象
DataInputStream input = new DataInputStream(in);//创建输入二进制流
DataOutputStream dout = new DataOutputStream(out);//创建输出二进制流
int num = input.read(b);// 读取二进制文件到b中
while (num != -1) {
dout.write(b, 0, num);// 将读取到的数组写入到输出流
num = input.read(b);// 重新再次读取
}
// 按顺序关闭所有流对象
input.close();
dout.close();
in.close();
out.close();
System.out.println("复制成功!");
}
初略代码,仅供参考!
C#使用二进制序列化、反序列化的操作首先,引入命名空间using System.Runtime.Serialization.Formatters.Binary;用以操作序列化和反序列化
还有,在牵涉到序列化的自定义类的类上方加上一个指示类[Serializable]
示例:
[Serializable]
public class PlayManager
{
/// <summary>
/// 序列化保存数据
/// </summary>
public void Save()
{
FileStream fs = null;
try
{
fs = new FileStream("保存文件的路径", FileMode.Create);
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, 要保存的对象);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
fs.Close();
}
/// <summary>
/// 加载序列化信息
/// </summary>
public void Load()
{
FileStream fs = null;
try
{
fs = new FileStream("文件路径", FileMode.OpenOrCreate);
BinaryFormatter bf = new BinaryFormatter();
对象接收= (对象的类型)bf.Deserialize(fs); //强制类型转换
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
fs.Close();
}
这就是在C#中序列化文件的使用,其实这个挺简单的,如果不加try-catch-finally也就四句代码,
过往的朋友们你们看明白了吗?不明白的还可以提问哦!
您可能感兴趣的文章:
- java 使用xom对象数据序列化为xml、反序列化、Preferences相关操作小案例
- C# 使用JSON对数据序列化和反序列化.
- java中没有2进制的数据类型,对二进制的操作,需要使用共三种操作符
- C# 使用JSON对数据序列化和反序列化.
- Unity 中使用C#的序列化和反序列化处理游戏数据
- silverlight3 datagrid c#中动态生成模板列(日期格式)使用IValueConvert对绑定数据的格式化操作
- 使用Java操作二进制文件
- C# 串口操作系列(3) -- 协议篇,二进制协议数据解析
- 面向 Java 开发人员的 Ajax: 结合 Direct Web Remoting 使用 Ajax----数据序列化不可能比这更简单了!
- c#数据的序列化和反序列化(推荐版)
- java执行序列化和反序列化操作实现对象的clone
- MongoDB在java中的操作-添,删,查 基本数据 文件存储 可使用
- C# 串口操作系列(3) -- 协议篇,二进制协议数据解析
- C#中struct的字节对齐、转换操作和复制为二进制数据(byte[])
- C#使用DataContractJsonSerializer实现Json格式的序列化和反序列化
- JAVA操作XML一(读取):使用DOM读取XML数据的两种具体实现
- C#二进制序列化使用笔记
- java中使用protobuf序列化(反序列化)
- c#写入注册表,读取注册表。使用二进制数据
- C#窗体操作数据库时使用按钮动态衔接上下一条的数据