求关于时间运算的库\原代码

tianyxy 2003-12-16 01:30:21
可以实现如下功能:日期比较 20031214格式和2003-12-14格式的转换 等
谢谢
请贴出代码 或者tongqingpo@21cn.com
多谢了!!!!
...全文
4 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
winco 2004-03-04
#include <iostream>
using namespace std;

void FormatTrans(char*& dest, const char* str)
{
if (!str)
{
cout<<"Null Source String!"<<endl;
return;
}

if ( str[4] == '-' )
{
dest = new char[9];
for( int i = 0; i<3; i++ )
dest[i] = str[i];
dest[4] = str[5];
dest[5] = str[6];
dest[6] = str[8];
dest[7] = str[9];
dest[8] = '\0';
return ;
}
else if ( str[4]-48 >= 0 && str[4]-48<= 9 )
{
dest = new char[11];
strcpy(dest, str);
dest[4] = '-';
dest[5] = str[4];
dest[6] = str[5];
dest[7] = '-';
dest[8] = str[6];
dest[9] = str[7];
dest[10]= '\0';
return ;
}
else
{
cout<<"Error Data Format!!!"<<endl;
return;
}
}

int main()
{
char* A = 0;
FormatTrans(A,"2003-12-14");
cout<<A<<endl;
if (A)
{
delete[] A;
A = 0;
}
system("pause");
}
回复
tianyxy 2004-03-03
很失望!
回复
smalltalk 2003-12-17
用sscanf从格式化的字符串中获得年月日,时分秒,在将他们变成struct tm结构,在转换成time_t ,然后用时间函数difftime()进行时间比较。代码你自己琢磨吧。
回复
qiaojicheng 2003-12-16
格式一样的日期进行比较进行字符串比较即可,时间晚的字符串比较值较大。
格式转换也很简单,分段插入一个-即可。
回复
layman2008 2003-12-16
就是字符串的操作吧

回复
发动态
发帖子
工具平台和程序库
创建于2007-09-28

2.4w+

社区成员

C/C++ 工具平台和程序库
申请成为版主
社区公告
暂无公告