|
问题归纳:串行化保存双精度型数据,十进制,换行,空格
代码如下所示,我的数据保存在一个集合类m_SelPtList中,其有三个成员变量(分别为X,Y,Z三个坐标值,类型是double),我这样保存下来的是二进制格式的文件,我想请问如何转为十进制显示的格式(即在文件中保存下来的是十进制的).
CFile file("1.txt",CFile::modeCreate | CFile::modeWrite);
CArchive ar(&file,CArchive::store);
int iCount=Spt.m_SelPtList.GetSize();
for(int i=0;i<iCount;i++)
{
ar<<m_SelPtList[i]->x<<m_SelPtList[i]->y<<m_SelPtList[i]->z;
}
在文件中我希望是按如下方式保存:每一行代表一个点,每个点的坐标以空格隔开分别存放X,Y,Z坐标.如下示:
-2.372417e+02 -4.032650e+01 -5.574990e+01//点一
-2.260712e+02 -4.186780e+01 -5.933653e+01//点二
请问如何在串行化中实现换行保存?空格隔开每个值?打开此文件的代码如何写更好?
|
|