Java vs C#序列化和发序列化
2009-06-15 23:51
218 查看
[align=center][/align] 序列化是将对象转化成二进制数据保存到文件中的一种方法。而反序列化则是相反的过程------------------------------------------题注
关键字 Serializable显示标明那个类可以序列化。
Java
Public class T[/b]est [/b]implements[/b] [/b]Serializable{}
C#
[Serializable]
Public class Test{}
1. 序列化
Java中的序列化有四个步骤:
1.1创建文件输出流
FileOutputStream fos=new FileOutputStream(“文件名”);
该输出流报FileNotFound异常,所以要解决异常或方法声明抛出异常
1.2 创建对象流
ObjectOutputStream oos=new ObjectOutputSteam(fos);
该输出流报IoException异常。所以要解决异常或方法声明抛出异常
1.3 写入对象
oos.WriteObject(对象);
1.4 关闭对象流
oos.close();
C#中的序列化
C#中序列化也是四个步骤:
1. 文件流
FileStream fs=new FileStream(”文件名”, FielMode.Openorcreate, FileAccess.Write);
参数的作用:1.写入那个文件,2.文件是否创建,3.写入还是读取
2. 写入流
StreamWriter sw=new StreamWriter(fs,true);
参数的作用:1.用哪个文件流加载写入流,2.对源文件是否覆盖,true为不覆盖
3. 写入
sw.Write();
sw.WriteLine();
sw.newLine();//换行符
sw.flush();//清空缓存
4. 关闭文件流
Sw.close();
Fs.close();
[align=center]反序列化[/align]
Java
反序列化四个步骤:
1.1创建文件输入流
FileInputStream fis=new FileInputStream(“文件名”);
该输出流报FileNotFound异常,所以要解决异常或方法声明抛出异常
1.5 创建对象流
ObjectInputStream ois=new ObjectInputStream (fis);
该输出流报IoException异常。所以要解决异常或方法声明抛出异常
1.6 读取对象
ois.readObject();
1.7 关闭对象流
ois.close();
C#反序列化
反序列化四个步骤:
1.文件流
FileStream fs=new FileStream(”文件名”, FielMode.Open, FileAccess.Read);
参数的作用:1.写入那个文件,2.文件是否创建,3.写入还是读取
2.读取流
StreamReader sr=new StreamReader (fs);
参数的作用:1.用哪个文件流加载写入流,2.对源文件是否覆盖,true为不覆盖
3.读取
sr.read();
sr.readLine();
sr.readToEnd();//得到接收的对象需要强制类型转换
4.关闭文件流
sr.close();
fs.close();
关键字 Serializable显示标明那个类可以序列化。
Java
Public class T[/b]est [/b]implements[/b] [/b]Serializable{}
C#
[Serializable]
Public class Test{}
1. 序列化
Java中的序列化有四个步骤:
1.1创建文件输出流
FileOutputStream fos=new FileOutputStream(“文件名”);
该输出流报FileNotFound异常,所以要解决异常或方法声明抛出异常
1.2 创建对象流
ObjectOutputStream oos=new ObjectOutputSteam(fos);
该输出流报IoException异常。所以要解决异常或方法声明抛出异常
1.3 写入对象
oos.WriteObject(对象);
1.4 关闭对象流
oos.close();
C#中的序列化
C#中序列化也是四个步骤:
1. 文件流
FileStream fs=new FileStream(”文件名”, FielMode.Openorcreate, FileAccess.Write);
参数的作用:1.写入那个文件,2.文件是否创建,3.写入还是读取
2. 写入流
StreamWriter sw=new StreamWriter(fs,true);
参数的作用:1.用哪个文件流加载写入流,2.对源文件是否覆盖,true为不覆盖
3. 写入
sw.Write();
sw.WriteLine();
sw.newLine();//换行符
sw.flush();//清空缓存
4. 关闭文件流
Sw.close();
Fs.close();
[align=center]反序列化[/align]
Java
反序列化四个步骤:
1.1创建文件输入流
FileInputStream fis=new FileInputStream(“文件名”);
该输出流报FileNotFound异常,所以要解决异常或方法声明抛出异常
1.5 创建对象流
ObjectInputStream ois=new ObjectInputStream (fis);
该输出流报IoException异常。所以要解决异常或方法声明抛出异常
1.6 读取对象
ois.readObject();
1.7 关闭对象流
ois.close();
C#反序列化
反序列化四个步骤:
1.文件流
FileStream fs=new FileStream(”文件名”, FielMode.Open, FileAccess.Read);
参数的作用:1.写入那个文件,2.文件是否创建,3.写入还是读取
2.读取流
StreamReader sr=new StreamReader (fs);
参数的作用:1.用哪个文件流加载写入流,2.对源文件是否覆盖,true为不覆盖
3.读取
sr.read();
sr.readLine();
sr.readToEnd();//得到接收的对象需要强制类型转换
4.关闭文件流
sr.close();
fs.close();
相关文章推荐
- [转]看破宝的文章--C# vs. Java:相反的思维方式 (译文)
- C# vs java
- C# vs Java —— Java剑 VS .NET刀 -- 晨袭血战(论模式)(一)
- Java vs C# —— J2EE与.NET平台关于电子企业的两种设想(2)
- Java vs C# —— 选择C#还是Java,归根到底还是平台问题
- JAVA与c#的序列化和反序列化
- J2EE vs. NET, Java vs. C#:比较公正的评价
- C#与C#接口对接,C#与Java的接口对接(序列化与反序列化)——(一)
- J2EE vs. NET, Java vs. C#:比较公正的评价
- C# VS Java
- Windows程序(C# VS 2008)杂记之Java访问Webservice服务
- [转]C# vs. Java:相反的思维方式(Part II)
- 一起谈.NET技术,C# VS Java
- Java vs. C#
- Java vs C# —— SOA平台之争:Java EE,还是.NET……
- Java vs C# —— J2EE与.NET平台关于电子企业的两种设想(1)
- Java vs C# —— 开发平台--- .Net? J2EE? 谁主沉浮
- 看破宝的文章--C# vs. Java:相反的思维方式 (译文)
- Thread.Sleep(0) vs Sleep(1) vs Yeild 经典(虽然是C#的,但是有助于理解java的)
- Java,C#使用二进制序列化、反序列化操作数据