Cfile file;
float (*letterToInt)[3];//这里存储的点数据,
file.write();这个函数有没有可以连续写letterTOInt里的数据;怎么把letterToInt[]的点(例如-58.2254)符号和小数点都写入txt文件中,最好是以二进制的形式。或者file有其他写入函数,或者其他写入方式。
float (*letterToInt)[3];//这里存储的点数据,
file.write();这个函数有没有可以连续写letterTOInt里的数据;怎么把letterToInt[]的点(例如-58.2254)符号和小数点都写入txt文件中,最好是以二进制的形式。或者file有其他写入函数,或者其他写入方式。
解决方案 »
- 界面
- 关于CDMA移动定位中心MPC 的L1接口问题。
- 100分!请问system32\config\下的software.log和SECURITY.LOG都是什么进程占用着?我用NtQuerySystemInformation无法获得其信息
- 如何才能让用户看不到我提供的类文件的源代码?
- 请教一个问题!
- 一个很奇怪的问题,CreateFile在Debug中可以创建文件,但在Release中不能创建文件。
- 急!急!请问怎样将数值写入注册表中?
- 不知还差哪些头文件还是少装了东西
- 机器中有一文件被他人共享,目前我无法联网,怎么能仅从自己的机器上查出被共享文件的路径?
- 设置什么编译参数可以生成map文件?
- 设计网络布局,保存到文件 导入另一程序中 (类似war3 地图编辑器的东西)
- 再问如何向加入的对话框发送消息
用file.read读一下就知道了
没用过CFile
virtual void Write(
const void* lpBuf,
UINT nCount
);
直接写就行,不用转 后面的字节数要设对
我想要的是一次write写出来 而且
virtual void Write(
const void* lpBuf,
UINT nCount
);
中的nCount对于不同的数据如何确定长度呢?
letterToInt 是指针数组,依次访问每个下标吧for(i=0;i<3;i++){
float f=*letter[i];
file.write(&f,sizeof(f));
}
如果是 文本格式 则先转换 成字符串再写入float f;
char str[20];
sprintf(str,"%f",f);
file.Write(str,strlen(str)+1);P.S.
还要写入 '\0' ... 有点不伦不类
//写入文件测试
CFile file;
int a[20]={0,1,2,3,4};
file.Open(L"test.txt",CFile::modeCreate|CFile::modeReadWrite);
file.Write(a,sizeof(a));
file.Flush();
file.SeekToBegin();
memset(a,0,sizeof(a));
file.Read(a,sizeof(a));没有问题啊,可以直接写,你们都说什么呢?试了吗?
CFile file;
float a[20]={0.123,1.234,2.345,3,4};
file.Open(L"test.txt",CFile::modeCreate|CFile::modeReadWrite);
file.Write(a,sizeof(a));
file.Flush();
file.SeekToBegin();
memset(a,0,sizeof(a));
file.Read(a,sizeof(a));浮点数也一样,也可以读出来
顶一个!用CFile.Write写浮点数组时,可以看成写字节数组。生成的文件肯定是二进制文件。
所谓文本文件,是把你要写入的数据,写转换成字符串,然后把字符串写入文件中,而写字符串时,写入了也是字符串中的每个字符的ASCII码对应的二进制数据。
const void* lpBuf,
UINT nCount
);
都哪和哪啊,看一下定义不就知道了嘛
就是按内存区字节数进行写入的
文本方式不同之处是在于要处理一些特殊的字符,查msdn就明白了
CFile::typeText Sets text mode with special processing for carriage return–linefeed pairs (used in derived classes only).