|
|
在将数据写入文本文件时,我使用Write函数: Write(iTreeDepth, "Face[%02i], Vertex IDs : (%u, %u, %u)", i, pIndices[0], pIndices[1], pIndices[2]); 其中 DWORD* pIndices = lFace.getAllVerts();
而我在另一个工程中把Write函数写入的数据读出的时候出现了问题,我使用的是ifs实例来读取的,一个个数据单元读取(找不到其它更好的方法,呵呵),读取存放的变量我声明为unsigned long 与DWORD保持一致,可是无论怎么读取,都读不到正确的数据,有谁有过这方面经验的,帮忙指点一下,谢谢!我把部分代码与数据贴出来:
写入:DWORD* pIndices = lFace.getAllVerts();
Write(iTreeDepth, "Face[%02i], Vertex IDs : (%u, %u, %u)", i, pIndices[0], pIndices[1], pIndices[2]);
这行代码执行后写入的数据为:
Face[00], Vertex IDs : (0, 2, 3)
Face[01], Vertex IDs : (3, 1, 0)
Face[02], Vertex IDs : (4, 5, 7)
Face[03], Vertex IDs : (7, 6, 4)
Face[04], Vertex IDs : (0, 1, 5)
Face[05], Vertex IDs : (5, 4, 0)
Face[06], Vertex IDs : (1, 3, 7)
Face[07], Vertex IDs : (7, 5, 1)
Face[08], Vertex IDs : (3, 2, 6)
Face[09], Vertex IDs : (6, 7, 3)
Face[10], Vertex IDs : (2, 0, 4)
Face[11], Vertex IDs : (4, 6, 2)
读取上面数据的代码为:
for(i=0; i<myModelData.NumFaces; i++)
{
ifs>>tmp>>tmp>>tmp>>tmp1;
ifs>>tmp1;
ifs>>myModelData.IndexOfVect[0]>>tmp>>myModelData.IndexOfVect[1]>>tmp>>myModelData.IndexOfVect[2];
ifs>>tmp1;
}
其中:myModelData.IndexOfVect定义为 unsigned long 类型,变量tmp为字符串类型,tmp1为字符类型
|
|