1、字符串到time_t的转换

BOOL GetStrFromTime(time_t iTimeStamp, char *pszTime)
{
tm *pTmp = localtime(&iTimeStamp);
if (pTmp == NULL)
{
return FALSE;
}
sprintf(pszTime, "%d-%d-%d %d:%d:%d", pTmp->tm_year + 1900, pTmp->tm_mon + 1, pTmp->tm_mday, pTmp->tm_hour, pTmp->tm_min, pTmp->tm_sec);
return TRUE;
}

这里的time_t可以传入一个unsigned int类型的参数,其表示的含义是1970.1.1 0:0:0开始计时的秒数,返回字符串结构如“2011-08-05 00:00:00”。

2、字符串到tm到time_t的转换

unsigned int GetTimeStampByStr( const char* pDate, int32 iNameSize )
{
const char* pStart = pDate;
char szYear[5], szMonth[3], szDay[3], szHour[3], szMin[3], szSec[3];
szYear[0]   = *pDate++;
szYear[1]   = *pDate++;
szYear[2]   = *pDate++;
szYear[3]   = *pDate++;
szYear[4]   = 0x0;
++pDate;
szMonth[0]  = *pDate++;
szMonth[1]  = *pDate++;
szMonth[2]  = 0x0;
++pDate;
szDay[0]    = *pDate++;
szDay[1]    = *pDate++;
szDay[2]    = 0x0;
++pDate;
szHour[0]   = *pDate++;
szHour[1]   = *pDate++;
szHour[2]   = 0x0;
++pDate;
szMin[0]    = *pDate++;
szMin[1]    = *pDate++;
szMin[2]    = 0x0;
++pDate;
szSec[0]    = *pDate++;
szSec[1]    = *pDate++;
szSec[2]    = 0x0;
tm tmObj;
tmObj.tm_year = atoi(szYear)-1900;
tmObj.tm_mon  = atoi(szMonth)-1;
tmObj.tm_mday = atoi(szDay);
tmObj.tm_hour = atoi(szHour);
tmObj.tm_min  = atoi(szMin);
tmObj.tm_sec  = atoi(szSec);
tmObj.tm_isdst= -1;
return mktime(&tmObj);
}

这里是完成将诸如"2011-01-01 00:00:00"格式的日期字符串转换为时间戳,更多关于<time.h>中提供的函数很简单,网上资料也很多,故不再赘述。

C/C++中time_t、tm、字符串之间的转换相关推荐

  1. C++中数字与字符串之间的转换 scanf string总结(复习必读)

    1 string的scanf读入操作 C++里面控制台输入直接使用cin操作就可以了:或者getline(istringstream,string); 字符和数字加减就是字符的ASCII码和数字直接加 ...

  2. java中数组和字符串之间的转换

    java中对于数组和字符串之间的转换确实是一小的迷点. 字符串转为数组可以使用: char[] toCharArray() 将此字符串转换为一个新的字符数组. 数组转字符串: 可以直接使用new的方式 ...

  3. C++中数字与字符串之间的转换

    1.字符串数字之间的转换 (1)string --> char *    string str("OK");    char * p = str.c_str(); (2)ch ...

  4. SQL中十六进制和字符串之间的转换

    Java中的转换非常简单便捷,但有时候需要在后台实现转换,这里我包装成函数.Mark一下 –字符串转十六进制 CREATE FUNCTION dbo.StrToHex(@str varchar(100 ...

  5. Python中数字和字符串之间的转换

    数字转为字符串 这个相对比较简单 我们可以使用Python中的str函数直接转换 例如将123转换为'123' print(str(123)) 或者使用格式化 print('%s' %123) 字符串 ...

  6. java中日期与字符串之间的转换

    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public cl ...

  7. python中时间戳、字符串之间转换详解

    [转载]python中时间戳.字符串之间转换详解 (2013-04-30 17:36:07) 转载▼ 标签: 转载 原文地址:python中时间戳.字符串之间转换详解作者:doris0920 1)秒数 ...

  8. Java中字节数组和十六进制字符串之间的转换

    1. 概述 在本教程中,我们将看看将字节数组转换为十六进制字符串,反之亦然的不同方法. 我们还将了解转换机制并编写我们的实现来实现这一点. 2. 字节和十六进制之间的转换 首先,我们来看看字节和十六进 ...

  9. java 嵌套对象转xml_Gson对Java嵌套对象和JSON字符串之间的转换 | 学步园

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...

  10. java中各进制之间的转换(十进制转十六进制、十进制转二进制、二进制转十进制、二进制转十六进制)...

    在java编辑中有没有遇到经常需要进行java中各进制之间的转换(十进制转十六进制.十进制转二进制.二进制转十进制.二进制转十六进制)的事情呢?下面我们就来分析一下各自是怎么转换的: [java] / ...

最新文章

  1. mongodb 按配置文件mongodb.conf启动
  2. Socket连接与HTTP连接
  3. jieba分词错误_如何掌握分词技术,你需要学会这些
  4. 1、Canvas的基本用法
  5. ajax 接收json数据的进一步了解
  6. Python高级——协程
  7. Android 源码获取-----在Windows环境下通过Git得到Android源代码
  8. ffmpeg h264 解码 转
  9. VMware ESXi Server 许可证注册方式
  10. 配置mysql读写分离
  11. java开发面试自我介绍模板_java面试自我介绍范文
  12. 分数阶麻雀搜索算法-附代码
  13. anydesk 自建服务器,AnyDesk使用FRP自建远程桌面连接
  14. Java继承同时实现接口 以及继承方法的使用
  15. VirtualBox 删除虚拟机
  16. 《​社会很单纯,复杂的是人-雾满拦江》
  17. 常用手机尺寸以及分辨率
  18. TCP原理之:linux网桥
  19. 尼康D500套机相机黑屏是怎么回事
  20. 中国房价到底有多少泡沫?数据说话!

热门文章

  1. 字节跳动青训营--前端day2
  2. 家族信托是什么东东?为何受到富豪们的大力吹捧?
  3. word分散对齐调整宽度_活用word分散对齐
  4. IntelliJ Idea优秀插件
  5. vue怎么和python后端交互_Vue - 与后端交互
  6. WDA ALV组件复用自定义button,单元格修改
  7. 深圳IT白领家中猝死:前员工称连续加班5通宵
  8. Xshell通过root用户连接虚拟机提示SSH服务器拒绝密码
  9. Android Studio —— TableLayout
  10. 06 Broadcasting Services Over 5G NR Enabled Multi-Beam Non-Terrestrial Networks