已知.dat为数据类
有请高手解决
----------------------------------------------------------------------
如果.dat文档是ascii格式
用txt文档打开既是
如果是二进制的话, 看你怎么读了, 一次一个byte°还是怎么着
然后fprintf就可以了
--------------------------------------------------------
不知道.dat的数据格式的话读出来差不多也是乱码
--------------------------------------------------------
freshui(五月的风 -最近老犯困)
请教能读成这类格式吗
2007/01/05 1765.00 1802.00 1765.00 1799.00 165982.00 158066.00
2007/01/08 1800.00 1806.00 1792.00 1799.00 148236.00 165826.00
2007/01/09 1794.00 1818.00 1790.00 1803.00 260380.00 171586.00
--------------------------------------------------------
1. 必须知道.dat文件是什么格式的
2. 你想从.dat中读什么内容
3. 读出的内容以什么格式写入.txt文件
--------------------------------------------------------
.dat 格式也是数据类的
想从.dat 中读数据
像这样的格式 写入TXT
2007/01/05 1765.00 1802.00 1765.00 1799.00 165982.00 158066.00
2007/01/08 1800.00 1806.00 1792.00 1799.00 148236.00 165826.00
2007/01/09 1794.00 1818.00 1790.00 1803.00 260380.00 171586.00
时间 开盘 最高 最低 收盘 成交量 持仓量
--------------------------------------------------------
二进制读取,
二进制写文件即可。
--------------------------------------------------------
如果格式需要改变,
那么需要分析 文件格式,
根据格式读写就是了 。。。。。。。。。
--------------------------------------------------------
怎样分析文件格式呀, 晕
--------------------------------------------------------
貌似都是文本类型的,那用fscanf读入,fprintf输出到txt
--------------------------------------------------------
没有那么简单, 直接输出的话, 是乱码
--------------------------------------------------------
那请问什么才算是二进制读取,写入呢??
--------------------------------------------------------
#include<stdio.h>
#include <string.h>
int main(int argc, char* argv[], char *env[])
{
FILE* pf = fopen("G:\\c\\1.dat","r");
FILE* pf2 = fopen("G:\\c\\22.txt","w");
char c[20]={0};
char d[6][20];
while (EOF!=fscanf(pf,"%s%s%s%s%s%s%s",c,&d[0],&d[1],&d[2],&d[3],&d[4],&d[5]))
{
printf("%f\n",d[0]);
fprintf(pf2,"%s\t%s\t%s\t%s\t%s\t%s\t%s\n",c,d[0],d[1],d[2],d[3],d[4],d[5]);
memset(d,0,6*20);
memset(c,0,20);
}
fclose(pf);
fclose(pf2);
return 0;
}
--------------------------------------------------------
我感觉好像二进制读取, 文本写入
但是不知道你那.dat里面具体什么东西, 不好判断
如果是加密的东西, 你还要解密
如果就是二进制的数据, 按照对应项的字节数读取到变量中, 然后用fprintf这个变量就行了