社区
C#
帖子详情
序列化的必要性及网络传输
wzp144650
2009-06-19 11:48:06
如题
在网上查了些,基本都是说“序列化可以将一个对象转化成一段字符串编码,以便在网络上传输或者做存储处理,使用时再进行
反序列”这样说太抽象了呀,还是不太懂呀,“以便在网络上传输”,是说这样更方便?“存储处理”,不序列化不能存储?
不应该呀,还是说他说的存储和我理解的存储不同。我想知道什么时候必须要序列化,还有,什么才可以在网络上传输?流
吗?
...全文
1167
29
打赏
收藏
序列化的必要性及网络传输
如题 在网上查了些,基本都是说“序列化可以将一个对象转化成一段字符串编码,以便在网络上传输或者做存储处理,使用时再进行 反序列”这样说太抽象了呀,还是不太懂呀,“以便在网络上传输”,是说这样更方便?“存储处理”,不序列化不能存储? 不应该呀,还是说他说的存储和我理解的存储不同。我想知道什么时候必须要序列化,还有,什么才可以在网络上传输?流 吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
29 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhaohad
2011-06-15
打赏
举报
回复
[Quote=引用 28 楼 zwamm 的回复:]
求序列化对象在网络传输的实例
我倒是要看看是咋回事………………
[/Quote]
同求
zwamm
2010-11-27
打赏
举报
回复
求序列化对象在网络传输的实例
我倒是要看看是咋回事………………
虾者
2010-03-05
打赏
举报
回复
当我要传输的对象数据量相当大时,怎么定义byte数组的大小啊,一般定义为1024,如果不够的话岂不是要数据丢失??继续增加byte数组的长度的话又太占内存了,有人建议分段传,有没有谁能提供具体的代码啊,我这先谢谢了
wjq
2009-06-19
打赏
举报
回复
这么说,你声明了一个类,你怎么通过网络传输给别人?
zgke
2009-06-19
打赏
举报
回复
当你发送数据和接收数据都是通过byte[]来获取的时候.如果你要发送对象.需要进行序列化. 如果你用WEBSERVICE来传输..则不需要因为WEBSERVICE会把数据序列化成XML数据.XML转换为byte IIS来做.所以你不需要去关心序列化的问题.
如果你使用SOCKET那你必须进行序列化.
wzp144650
2009-06-19
打赏
举报
回复
[Quote=引用 2 楼 hongqi162 的回复:]
互联网上传输的是字节
[/Quote]
晕,看错了。。。。我都不知道怎么看了个“基本”两字,你的意思是只有字节才可以在网络上传输吗?也就是只能传BYTE?
wzp144650
2009-06-19
打赏
举报
回复
[Quote=引用 2 楼 hongqi162 的回复:]
互联网上传输的是字节
[/Quote]
?基本?我不知道你的基本是否用的恰当,是一定是字节还是有的是?
hongqi162
2009-06-19
打赏
举报
回复
互联网上传输的是字节
evaa006
2009-06-19
打赏
举报
回复
帮顶
yyq136
2009-06-19
打赏
举报
回复
[Quote=引用 2 楼 hongqi162 的回复:]
互联网上传输的是字节
[/Quote]
是指在互联网上的数据都是采用字节流的形式传输的。
比如说,当你访问webservice,希望从webservice中获取dataset时,有想过webservice是怎样将dataset传输给你的呢,这就牵涉到序列化饭序列化的问题。因为数据之间的传输都是一些字节流,所以webservice在将数据传输给你之前需要将数据序列化为字节流,然后在通过通道将字节流传输到客户端,再通过饭序列化将字节流转换为dataset,这样就完成了数据传输操作。
daone
2009-06-19
打赏
举报
回复
可以自己写个页面定义个源绑定一个DATAVIEW控件,运行后看页面源文件里的VIEWSTATE就清楚了。就是序列化的东东了
风之影子
2009-06-19
打赏
举报
回复
学习了
Tassadar1979
2009-06-19
打赏
举报
回复
[Quote=引用 2 楼 hongqi162 的回复:]
互联网上传输的是字节
[/Quote]
分流序列化和xml序列化。
bbbbbb888888
2009-06-19
打赏
举报
回复
也就是你怎么把你的ClassA变成 byte[] 或者再由byte[]变成ClassA
lovvver
2009-06-19
打赏
举报
回复
[Quote=引用 20 楼 wzp144650 的回复:]
引用 19 楼 lovvver 的回复:
内存里可以存放对象,但是网络传输,则只能传输二进制码,也就是说,你要传一个对象到服务器,必须要将这个对象序列化层二进制码才能传输。
一般.net带的对象大多都实现了ISerializable接口,也就是默认支持序列化,在传输的时候会在底层自动序列化成二进制码。
而如果一个对象是你的自定义对象,那么系统是无法自动把你的对象序列化成二进制码的,那么就要求你的对象也实现ISerializable接口,或…
[/Quote]
我说的二进制码,指的就是字节码(byte[])
wzp144650
2009-06-19
打赏
举报
回复
[Quote=引用 19 楼 lovvver 的回复:]
内存里可以存放对象,但是网络传输,则只能传输二进制码,也就是说,你要传一个对象到服务器,必须要将这个对象序列化层二进制码才能传输。
一般.net带的对象大多都实现了ISerializable接口,也就是默认支持序列化,在传输的时候会在底层自动序列化成二进制码。
而如果一个对象是你的自定义对象,那么系统是无法自动把你的对象序列化成二进制码的,那么就要求你的对象也实现ISerializable接口,或者手动对你的对象做序列化。
[/Quote]
他们所说的字节和你所说的二进制码有什么联系吗?这个感念我很模糊
lovvver
2009-06-19
打赏
举报
回复
内存里可以存放对象,但是网络传输,则只能传输二进制码,也就是说,你要传一个对象到服务器,必须要将这个对象序列化层二进制码才能传输。
一般.net带的对象大多都实现了ISerializable接口,也就是默认支持序列化,在传输的时候会在底层自动序列化成二进制码。
而如果一个对象是你的自定义对象,那么系统是无法自动把你的对象序列化成二进制码的,那么就要求你的对象也实现ISerializable接口,或者手动对你的对象做序列化。
sunday147
2009-06-19
打赏
举报
回复
用字节传输,可以看计算机网络与技术这一本书
vesion
2009-06-19
打赏
举报
回复
假如你想按自己的结构存储一个文件的话就要新建一个文件结构的类。再把这个类序列化就可以保存为本地文件。下次想打开的时候 就直接把这个文件反序列化就可以读回你自己设定的文件信息。
qldsrx
2009-06-19
打赏
举报
回复
举例的话,正好前不久给别人用序列化解决了一个问题。
http://topic.csdn.net/u/20090615/22/41da2271-82ad-4dc0-b6ee-d8d6edcf6daa.html
你看4楼我的回复,他要把一个对象保存到数据列中,就好比往数据库一张表里插入一个对象的内容,这种情况下不序列化就不行。
加载更多回复(9)
序列化
和反
序列化
的详解
一、基本概念 1、
序列化
和反
序列化
的定义: (1)Java
序列化
就是指把Java对象转换为字节序列的过程 Java反
序列化
就是指把字节序列恢复为Java对象的过程。 (2)
序列化
最重要的作用:在传递和保存对象时.保证对象的完整性和可传递性。对象转换为有序字节流,以便在
网络
上
传输
或者保存在本地文件中。 反
序列化
的最重要的作用:根据字节流中保存的对...
序列化
的作用
前言: 本文以C++语言作为讲解
序列化
的作用。
序列化
是什么? 一般说到
序列化
,其实是包含了反
序列化
。 以C++为例,
序列化
就是将结构体(或者是类)等复杂的数据结构的各个属性有序地保存到字符数组。而反
序列化
就是将有序的字符数组还原回结构体(或者是类)等复杂的数据结构。
序列化
作用 1、方便
网络
传输
我们都知道,socket的数据都是以字符串进行
传输
,而
序列化
的作用就是
boost 之
序列化
和反
序列化
文章目录
序列化
操作简介主要特征详细介绍
序列化
内置类型
序列化
stl容器
序列化
自定义类型(侵入式)
序列化
指针和引用
序列化
自定义类型(非侵入式)
序列化
继承类版本控制参考文档
序列化
操作简介
序列化
是将程序数据保存到磁盘中比较方便的一种方式,简单理解
序列化
就是将程序中的数据统一转化成字符串最终保存在磁盘中或进行
网络
传输
,同时可通过反
序列化
过程恢复程序数据,是数据储存和数据
传输
的利器。有很多第三方库可以做
序列化
,boost库的
序列化
的功能是我比较常用的一种
序列化
方法,下文将详细介绍boost的
序列化
操作。 主要特征
序列化
和反
序列化
有什么作用?
一、基本概念 1、
序列化
和反
序列化
的定义: (1)Java
序列化
就是指把Java对象转换为字节序列的过程 Java反
序列化
就是指把字节序列恢复为Java对象的过程。 (2)
序列化
最重要的作用:在传递和保存对象时.保证对象的完整性和可传递性。对象转换为有序字节流,以便在
网络
上
传输
或者保存在本地文件中。 反
序列化
的最重要的作用:根据字节流中保存的对象状态及描述信息,通过反
序列化
重建对象。 总结:核心作用就是对象状态的保存和重建。(整个过程核心点就是字...
C++
序列化
和反
序列化
序列化
序列化
1、背景2、定义3、
序列化
评价指标4、
序列化
实例参考
序列化
1、背景 1、在TCP的连接上,它
传输
数据的基本形式就是二进制流,也就是一段一段的1和0。 2、在一般编程语言或者
网络
框架提供的API中,
传输
数据的基本形式是字节,也就是Byte。一个字节就是8个二进制位,8个Bit。 二进制流和字节流本质上是一样的。对于我们编写的程序来说,它需要通过
网络
传输
的数据是结构化的数据,比如,一条命令、一段文本或者一条消息。对应代码中,这些结构化的数据都可以用一个类或者一个结构体来表示。 序
C#
110,566
社区成员
642,567
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章