关于ttime的序列化存储及读取的方法
当程序的配置文件数据项比较多,类型比较多时通常使用二进制的形式来保存数据,RReadStream和RWriteStream提供了多种数值型和描述符类型的输入输出方法,但是其它基本类型就需要自己处理一下了,比如TTime,Symbian系统中使用一个64位整型来保存日期和时间,这样当序列化TTimer对象是就可以取出这个64位数值进行保存了,可是接下来会发现RReadStream和RWriteStream根本没有提供64位整型的输入输出方法,这时需要我们把64位整型拆分成两个32位整型数然后进行保存,下面的代码演示了如何序列化一个TTime对象,并展示了Series 2nd和3rd平台上的不同处理方法:
void ExternalizeL(RWriteStream& aStream)
{
TTime time;
time.HomeTime();
//Decomposes TTime object into two TUint32 objects.
TUint32 low(0), high(0);
#if defined __SERIES60_3X__
low = I64LOW(time.Int64());
high = I64HIGH(time.Int64());
#else
low = time.Int64().Low();
high = time.Int64().High();
#endif
aStream.WriteUint32L( low );
aStream.WriteUint32L( high );
}
void InternalizeL(RReadStream& aStream)
{
//Two TUint32 objects combine to a TInt64 object for constructing a TTime object.
TUint32 low(0), high(0);
low = aStream.ReadUint32L();
high = aStream.ReadUint32L();
TInt64 timeVal( 0 );
#if defined __SERIES60_3X__
timeVal=MAKE_TINT64(high, low );
#else
timeVal = TInt64( high, low );
#endif
TTime time = timeVal;
}
http://wiki.forum.nokia.com/index.ph...AF%B9%E8%B1%A1
![](http://www.forum.nokia.com/piazza/discussion/forum/images/element/buttons_blue/quote.gif)
![](http://www.forum.nokia.com/piazza/discussion/forum/images/element/buttons_blue/multiquote_off.gif)
![](http://www.forum.nokia.com/piazza/discussion/forum/images/element/buttons_blue/quickreply.gif)
转载于:https://www.cnblogs.com/zziss/archive/2010/01/20/1652584.html
关于ttime的序列化存储及读取的方法相关推荐
- python numpy读取数据_numpy中以文本的方式存储以及读取数据方法
这篇文章主要介绍了关于numpy中以文本的方式存储以及读取数据方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 Numpy中除了能够把数据以二进制文件的方式保存到文件中以外,还可以选 ...
- python3 dump_Python3基础 pickle.dump和load 对一个对象进行序列化存储及读取
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda : 4.5.11 typesetting : Markdown ...
- Spark存储与读取文件方法小结
http://blog.csdn.net/buring_/article/details/42424477 mark 一:Spark中常常面临这RDD的存储问题,记录一下常常面临的几种情况.sav ...
- Android数据存储和读取的三种方法
Android数据存储和读取的三种方法 一.文件存储 二.Context存储 三.SharedPreferences存储 一.文件存储 1.利用文件进行数据的存储 public static bool ...
- Android序列化的存储和读取
Android中序列化的实现有两种方式:Serializable接口和Parcelable接口,本文对这两种方式进行简单的总结和使用. 一.相关概念 (一)序列化的原因(序列化能实现的效果) 1.永久 ...
- java对象序列化存储到文件、从文件中反序列化读取java对象
1.首先,对即将要操作的java对象的类需要实现序列化接口Serializable,代码如下: import java.io.Serializable; public class User imple ...
- redis存储与读取对象和对象集合
在生产过程中经常会用到redis这种nosql数据存储,以达到快速的查询等操作. 在参考网上与相关图书资料后,决定自己动手实践以下redis对对象的存储与读取,以便以后在工作中可以拿来主意. redi ...
- java切割输入流_Java分割流,对象流,参与序列化,分割读取文件,对象输入或输出流等【诗书画唱】...
自己写的题目:用分割流把一个Java文件分割读取,打印出每次读取的内容,要求每次读取打印500个字节. package fenGeLiu; import java.io.*; public class ...
- paip.odbc DSN的存储与读取
paip.odbc DSN的存储与读取 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net/atti ...
- mvc存储Cookie和读取Cookie方法
mvc存储Cookie和读取Cookie方法: //存储 HttpCookie cookie = new HttpCookie("User"); System.Text.Encod ...
最新文章
- vimrepress
- java beans 组件_如何利用JavaBeans在应用程序中创建组件?
- 机器学习系列(8)_读《Nature》论文,看AlphaGo养成
- linux系统下载经验,linux系统的学习经验首篇
- 数据迁移,不停机上线的正确姿势
- docker导入镜像 liunx_docker扫盲?面试连这都不会就等着挂吧
- vue2.0 引用qrcode.js实现获取改变二维码的样式
- qt高亮快捷键_Qt高级——QtCreator常用快捷键
- TopCoder Arena 及其插件安装(转)
- python编程100例-一,python编程100例
- MODIS数据下载——CSV模式直接下载hdf文件
- 全球光伏多晶硅价格上涨 中美贸易纠纷不断
- 阿里云解析DNS个人版对比免费版有哪些优势?
- linux查看隐藏文件命令
- 2016预测哪些公司增值最猛?
- 技术脱盲贴1------WINPE手工制作
- 在Linux上搭建一个自己的网站
- 【组队学习】【35期】组队学习内容详情
- 面试B站,结果面试官牵着一条狗出来面试我....这是什么操作??
- 专访Mockplus用户齐嘉伟 | Mockplus满足做原型的所有需求