Linux时间戳转换成BCD码(转载)
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
/***************************************************************************
*函数名称:Char2Bcd
*函数介绍:字符串转BCD
*输入参数:-buf:指向字符串
*输出参数:无
*返回值 :转换后的双精度值
*修改历史:
***************************************************************************/
char Char2Bcd(char i_cHexData)
{
char i;
i=((i_cHexData%)/)*+(i_cHexData%);
return i;
} /***************************************************************************
*函数名称:Get_BCDTime7
*函数介绍:转换为BCD码格式时间
*输入参数:-*time:
*输出参数:无
*返回值 :无
*修改历史:
***************************************************************************/
void Get_BCDTime7(time_t i_tTime,char* o_cpBcdTime)
{
struct tm *time;
time=localtime(&i_tTime);
o_cpBcdTime[]=Char2Bcd((time->tm_year+)/);
o_cpBcdTime[]=Char2Bcd((time->tm_year+)%);
o_cpBcdTime[]=Char2Bcd(time->tm_mon+);
o_cpBcdTime[]=Char2Bcd(time->tm_mday);
o_cpBcdTime[]=Char2Bcd(time->tm_hour);
o_cpBcdTime[]=Char2Bcd(time->tm_min);
o_cpBcdTime[]=Char2Bcd(time->tm_sec);
} /***************************************************************************
*函数名称:Get_CurBCDTime6
*函数介绍:转换为BCD码格式时间
*输入参数:-*time:
*输出参数:无
*返回值 :无
*修改历史:
***************************************************************************/
void Get_BCDTime6(time_t i_tTime,char* o_cpBcdTime)
{
struct tm *time;
time=localtime(&i_tTime);
o_cpBcdTime[]=(unsigned char)((((time->tm_year-)/)<<)|((time->tm_year-)%));
o_cpBcdTime[]=(unsigned char)((((+time->tm_mon)/)<<)|((+time->tm_mon)%));
o_cpBcdTime[]=(unsigned char)((((time->tm_mday)/)<<)|((time->tm_mday)%));
o_cpBcdTime[]=(unsigned char)((((time->tm_hour)/)<<)|((time->tm_hour)%));
o_cpBcdTime[]=(unsigned char)((((time->tm_min)/)<<)|((time->tm_min)%));
o_cpBcdTime[]=(unsigned char)((((time->tm_sec)/)<<)|((time->tm_sec)%));
} /***************************************************************************
*函数名称:Get_CurBCDTime6
*函数介绍:获取当前BCD码格式时间
*输入参数:-*time:
*输出参数:无
*返回值 :无
*修改历史:add by lianzihao 2016-09-13
***************************************************************************/
void Get_CurBCDTime6(char* o_cpBcdTime)
{
time_t lt=;
lt = time(NULL);
struct tm * pCurTime = localtime(<);
o_cpBcdTime[]=(unsigned char)((((pCurTime->tm_year-)/)<<)|((pCurTime->tm_year-)%));
o_cpBcdTime[]=(unsigned char)((((+pCurTime->tm_mon)/)<<)|((+pCurTime->tm_mon)%));
o_cpBcdTime[]=(unsigned char)((((pCurTime->tm_mday)/)<<)|((pCurTime->tm_mday)%));
o_cpBcdTime[]=(unsigned char)((((pCurTime->tm_hour)/)<<)|((pCurTime->tm_hour)%));
o_cpBcdTime[]=(unsigned char)((((pCurTime->tm_min)/)<<)|((pCurTime->tm_min)%));
o_cpBcdTime[]=(unsigned char)((((pCurTime->tm_sec)/)<<)|((pCurTime->tm_sec)%));
}
/***************************************************************************
*函数名称:Get_CurBCDTime7
*函数介绍:获取当前BCD码格式时间
*输入参数:-*time:
*输出参数:无
*返回值 :无
*修改历史:
***************************************************************************/
void Get_CurBCDTime7(char* o_cpBcdTime)
{
time_t tt;
struct tm *curtime;
time(&tt);
curtime=localtime(&tt);
o_cpBcdTime[]=Char2Bcd((curtime->tm_year+)/);
o_cpBcdTime[]=Char2Bcd((curtime->tm_year+)%);
o_cpBcdTime[]=Char2Bcd(curtime->tm_mon+);
o_cpBcdTime[]=Char2Bcd(curtime->tm_mday);
o_cpBcdTime[]=Char2Bcd(curtime->tm_hour);
o_cpBcdTime[]=Char2Bcd(curtime->tm_min);
o_cpBcdTime[]=Char2Bcd(curtime->tm_sec);
} #define LEN 7
int main(void)
{
int i = ;
char l_arrBcdtime[LEN] ={};
Get_CurBCDTime7(l_arrBcdtime);
printf("Get_CurBCDTime7 :");
for(i=;i<LEN;i++)
{
printf("%02x",l_arrBcdtime[i]);
} Get_CurBCDTime6(l_arrBcdtime); printf("\nGet_CurBCDTime6 :");
for(i=;i<LEN-;i++)
{
printf("%02x",l_arrBcdtime[i]);
}
printf("\n");
return ;
} 运行结果:

注:原文链接:https://blog.csdn.net/li_wen01/article/details/78990124
Linux时间戳转换成BCD码(转载)的更多相关文章
- Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间
ylbtech-Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间 1.返回顶部 1. Java 实例 - 时间戳转换成时间 Java 实例 以下实例演示 ...
- unix时间戳转换成标准时间(c#)
//---unix时间戳转换成标准时间(c#)---// /* string timeStamp = "1144821796"; DateTime dtSt ...
- C#将unix时间戳转换成.net的DateTime类型的代码
下面的内容是关于C#将unix时间戳转换成.net的DateTime类型的内容. DateTime epoch = new DateTime(1970,1,1,0,0,0,0, DateTimeKin ...
- js中时间戳转换成时间格式
js中时间戳转换成时间格式, // 时间戳转换成时间格式 var formatDate = function(date){ date = new Date(date); var y=date.getF ...
- C# 13位时间戳转换成标准时间C#代码
原地址:https://www.cnblogs.com/yixuehan/p/5559244.html /// <summary> /// 时间戳转换成标准时间 /// </summ ...
- js将时间戳转换成日期格式-陈远波
var timestamp =1539598555000;//时间戳 //时间戳转换成time格式function timestampToTime(timestamp) { var date = ne ...
- vue element-ui表格里时间戳转换成时间显示
工作中遇到后台给的表格数据里时间是一个13位的时间戳,需要转换成时间显示在表格里, 可以用element-ui表格自带的:formatter函数,来格式化表格内容: // 时间戳转换成时间 // 使用 ...
- 时间戳转换成日期的js
在项目开发过程中,我们常常需要把时间戳转换成日期.下面这个是我一直使用的js方法,希望能帮助到有需要的朋友.大家如果有更好的方法,请多多指教! js代码如下: //时间戳转换成日期 function ...
- javascript时间戳转换成指定格式的日期
//时间戳转换成指定格式的日期DateTool.IntDatetimeTo = function(time, format){ var testDate = new Date(time); ...
随机推荐
- Ubuntu16.04 使用lvm挂载硬盘以及扩容
1.首先通过fdisk -l 查看磁盘的属性,找到要添加的磁盘名称(Disk /dev/sda) 2.使用fdisk将磁盘进行逻辑分区 fdisk /dev/sda m来查看命令帮助 n添加一张新的p ...
- Hadoop环境搭建--Docker完全分布式部署Hadoop环境(菜鸟采坑吐血整理)
系统:Centos 7,内核版本3.10 本文介绍如何从0利用Docker搭建Hadoop环境,制作的镜像文件已经分享,也可以直接使用制作好的镜像文件. 一.宿主机准备工作 0.宿主机(Centos7 ...
- mybatis中foreach使用
mybatis中的<foreach collection="list" item="item" index="index" open= ...
- 51-python3 pandas读写excel
转载自:https://blog.csdn.net/brink_compiling/article/details/76890198?locationNum=7&fps=1 0. 前言Pyth ...
- html模板导出pdf文件
package com.crc.commonreport.util; import java.awt.Insets; import java.io.ByteArrayOutputStream; imp ...
- server 打开失败
server:An unexpected exception was thrown. 当server服务器遇到这样遇到不能料想的错误导致打开失败的情况下,我们可以找到一个com.genuitec.ec ...
- qt布局管理-缩放、多窗口切换
关于缩放的布局 所有控件要求与主窗口同时缩放,那么在所有控件设置好布局后,最后点击最外侧的主控件,选择水平布局或者垂直布局即可. 另外每个空间的属性可更改,如SizePolicy用于设置空间是否可缩放 ...
- linux学习第十七天 (Linux就该这么学)
今天12月14日学习比较少点,等了一会,主要讲了squid代理,1,正向代理 2反向代理 正向代表分为:标准的正向代理,透明的正向代理 ,这个比较实用, 还讲了RHCE考试的中的内容 iscsi 是 ...
- node vue 项目部署问题汇总
场景:vue-router为history模式,不带项目名访问的部署,如果资源是用相对路径加载,则资源匹配路径不对 一.带项目名称访问,如部署到tomcat服务上 webpack: build/ut ...
- Eclipse配置注释模板详细介绍
<引言> Eclipse 中提供了一个非常人性化的功能,可以自动生成注释为我们程序员做项目时提供便利,并且注释内容还具有定制化 可以根据自己的喜好配置不同的样式. <正文> 首 ...