返回信息流随机存取文件函数write可以一次写入一个类的数据file.write( reinterpret_cast< const char * >( &h ) , sizeof( h ) );( h是一个类),h类成员都是初始化的了,可是写入文件中的类成员都没有初始化,而且看起来象是一堆乱码,真的不明白是怎么回事.
请哪位高手知道的讲解一下.谢谢!
这是一条镜像帖。来源:北邮人论坛 / cpp / #6213同步于 2008/5/5
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
请教一个随机写入函数write的问题
gitt
2008/5/5镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
把write函数的源代码贴一下吧....
【 在 gitt (哗啦哗啦) 的大作中提到: 】
: 随机存取文件函数write可以一次写入一个类的数据file.write( reinterpret_cast< const char * >( &h ) , sizeof( h ) );( h是一个类),h类成员都是初始化的了,可是写入文件中的类成员都没有初始化,而且看起来象是一堆乱码,真的不明白是怎么回事.
: 请哪位高手知道的讲解一下.谢谢!
没看懂。
【 在 gitt (哗啦哗啦) 的大作中提到: 】
: 随机存取文件函数write可以一次写入一个类的数据file.write( reinterpret_cast< const char * >( &h ) , sizeof( h ) );( h是一个类),h类成员都是初始化的了,可是写入文件中的类成员都没有初始化,而且看起来象是一堆乱码,真的不明白是怎么回事.
: 请哪位高手知道的讲解一下.谢谢!
这个我在一些加密函数里见过,不是不可以
【 在 ericyosho (ericyosho) 的大作中提到: 】
: 竟然把一个类指针,直接强行转为一个char的指针了?
: 那么牛B。
那LZ说的一堆乱码就应该是正常的了。
都以byte的格式写进一个文件,能不是乱码么:)
原来是这么个加密的办法。
恩,也对,两边都知道这个类的定义格式就行。
^^
对啊,我咋没想到呢?
lz那个可能就是个加密函数,所以打出来的结果会是乱码一样的东西,很有可能;
不过还是有待lz证实.....
【 在 ericyosho (ericyosho) 的大作中提到: 】
: 那LZ说的一堆乱码就应该是正常的了。
: 都以byte的格式写进一个文件,能不是乱码么:)
: 原来是这么个加密的办法。
: ...................
我知道了啊,因为是用二进制形式输入到文本中的,所以文件会变成一堆乱码,可以用read函数读取,形如:f.read( reinterpret_cast< char * >( &h ) , sizeof( h ) )
一次性读取整个类所有成员的数据.
原来如此.....
【 在 gitt (哗啦哗啦) 的大作中提到: 】
: 我知道了啊,因为是用二进制形式输入到文本中的,所以文件会变成一堆乱码,可以用read函数读取,形如:f.read( reinterpret_cast< char * >( &h ) , sizeof( h ) )
: 一次性读取整个类所有成员的数据.