如何把从文件中取出来的DATA转成十进制数据? 从文件中读取以下的数据:52 00 13 15 03 99 19 (从右向左拼)它代表日期1999-03-15 13:00:52 有什么好方法把读出来的数据转成CString "1999-03-15 13:00:52"? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 #include <afx.h>#include <iostream.h>void main(){ CString str="52 00 13 15 03 99 19"; CString result; result.Format("%s%s-%s-%s %s:%s:%s", str.Mid(18,2), str.Mid(15,2), str.Mid(12,2), str.Mid(9,2), str.Mid(6,2), str.Mid(3,2), str.Mid(0,2)); cout<<result<<endl;}---------------------------------------------------------------楼主不是不会,而是太懒^_^ 楼上,要是lz说你这个还是太复杂了,你该怎么办?哈哈~~~lz,楼上方法清晰明了哈~~ #include <afx.h>这个头文件可以不用吧。 呵呵,可能我说的还不是很清楚。问题不象看起来那么简单:1.数据是直接从二进制文件中读出来的,所以取出来时是BYTE *类型。2. 取出来的数值等于16进制。要把16进制转换成十进制。我现在的做法是一个字节一个字节的取,然后再转换成10进制,如:取得BYTE *pTemp = 52,然后int nNum = *pTemp(这时nNum = 82); 然后转成10进制:nNum = i(int)nNum/16*10 + (int)nNum%16.这样就可以取回52了。但是这样做法很麻烦,所以在此请教一下好一点的方法。 呵呵,的确没说清楚。抱歉,昨天有点忙,没时间来回复!虽然已经结贴了,还是说说我的看法:int i=atoi((char*)pTemp);用atoi这个函数试试,不过如果pTemp中读出的是数字以外的东西的话就得不到正确结果了。 如何判断DUN的有无? 关于dll控件版本更新的问题 求驱动自动安装的方法 很简单的一个问题,急!急!急! !!!!!如 何 在 IE 控 件 中 利 用 钩 子 拦 截 页 面 COPY 或 者 页 面 文 本 的 选 中 ? 《windows高级编程》中例子的编译设置? Qt 图片重新加载 一个菜鸟的VC基本语法问题,书上没有答案,请各位大侠来解决. 学校的课本上的东西真的有用吗? 请问关于坐标的问题 如何在单文档中创建对话框? URLDownloadToFile问题,问了半个月了,没有人会,来者有分
#include <iostream.h>void main()
{
CString str="52 00 13 15 03 99 19";
CString result;
result.Format("%s%s-%s-%s %s:%s:%s",
str.Mid(18,2),
str.Mid(15,2),
str.Mid(12,2),
str.Mid(9,2),
str.Mid(6,2),
str.Mid(3,2),
str.Mid(0,2));
cout<<result<<endl;
}
---------------------------------------------------------------
楼主不是不会,而是太懒^_^
这个头文件可以不用吧。
问题不象看起来那么简单:
1.数据是直接从二进制文件中读出来的,所以取出来时是BYTE *类型。
2. 取出来的数值等于16进制。要把16进制转换成十进制。我现在的做法是一个字节一个字节的取,然后再转换成10进制,如:取得BYTE *pTemp = 52,
然后int nNum = *pTemp(这时nNum = 82); 然后转成10进制:nNum = i(int)nNum/16*10 + (int)nNum%16.这样就可以取回52了。但是这样做法很麻烦,所以在此请教一下好一点的方法。
int i=atoi((char*)pTemp);
用atoi这个函数试试,不过如果pTemp中读出的是数字以外的东西的话就得不到正确结果了。