此方法将对象写入对象流,然后转换成string,故适用于http和soap协议或者其他的网络传输。
注意:对象须实现Serializable接口,定义的serialVersionUID相同,列表传送也需实现Serializable接口,hashtable可以。
服务器端写对象:
try {Hashtable<integer user>hashtable=new Hashtable<integer user>();
ByteArrayOutputStream baos=new ByteArrayOutputStream();
ObjectOutputStream objout = null;
objout = new ObjectOutputStream(baos);
objout.writeObject(hashtable);//写对象
byte[] b=baos.toByteArray();
String s=new BASE64Encoder().encode(b);
objout.close();
baos.close();
return s;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "erroe";
}

客户端解析对象:
byte[] b=new BASE64Decoder().decodeBuffer(s);//s是接受的对象
ByteArrayInputStream bais=new ByteArrayInputStream(b);
ObjectInputStream ios=new ObjectInputStream(bais);
Hashtable<integer user>hashtable=new Hashtable<integer user>();
hashtable=(Hashtable<integer user>) ios.readObject();
//User user =(User) ios.readObject();
System.out.println(hashtable.size());
System.out.println(hashtable);</integer></integer></integer></integer></integer>

更多相关文章

  1. Android更新UI的四种方法详解
  2. android Looper Message 代码分析
  3. android view setTag()和findViewWithTag()
  4. Android基础之通过 Intent 传递类对象
  5. Android菜鸟日记20 - ListView
  6. 客户端笔记——Android(安卓)序列化
  7. Android(安卓)DataBinding
  8. Android之控制视图
  9. 请求对象Android(安卓)网络操作常用的两个类

随机推荐

  1. 【RFB】Linux uinput 分析,虚拟鼠标,键盘
  2. Red Hat Linux下如何修改网卡MAC地址
  3. window下使用vnc远程登录linux图形界面和
  4. Linux源码包里有个scripts文件夹,里面放的
  5. linux驱动之分离分层的概念
  6. 在两台Linux机器之间配置一条SLIP链路,以
  7. linux下mysql表名大小写敏感问题
  8. (转载)浏览器兼容性问题大汇总
  9. Linux协议栈(3)——接收流程及函数
  10. 最近要学习dfb积累资料