在c++中怎么把字符串格式的时间转换成长整形时间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在c++中怎么把字符串格式的时间转换成长整形时间相关的知识,希望对你有一定的参考价值。

可以用 mktime(target_time); 函数送返。time_t
target_time 是 tm 结构。

time_t t1;
time_t rawtime;
struct tm * target_time;

time ( &rawtime );
target_time = localtime ( &rawtime ); // 其它参数
target_time->tm_year = 2008 - 1900;
target_time->tm_mon= 8 - 1; // 月 - 1
target_time->tm_mday = 8 ; // 日
target_time->tm_hour = 9 ; // 时
target_time->tm_min = 1 ; // 分
target_time->tm_sec = 1 ; // 秒
t1 = mktime (target_time);

如1995-03-04 11:29:30
可以先用sscanf("1995-03-04 11:29:30", "%d-%d-%d %d:%d:%d", &Y,&M,&D,&h,&m,&s);试着分出年月日时分秒
参考技术A #include<iostream>
#include<cstdio>
using namespace std;

int main()

int num;
char ch[20];
cin>>num;
itoa(num,ch,10);//利用itoa这个函数
cout<<ch<<endl;


方法2:

#include<iostream>
#include<cstdio>
using namespace std;

int main()

int num;
char ch[20];
cin>>num;
sprintf(ch,"%d",num);//利用sprintf()这个函数
cout<<ch<<endl;


方法3:(自己实现......)

#include<iostream>
#include<cstdio>
using namespace std;
long Pow(int num1, int num2)

long sum=1;
for(int i=1; i<=num2; i++)

sum=num1*sum;

return sum;

char* Itoa(long num)

for(int i=0; i<num; i++)

if(Pow(10,i)>num)
break;

int h=num/Pow(10,i-1);
int *n=new int[i-1];
for(int j=i-1; j>=1; j--)

num=num%int(Pow(10,j));
n[j-1]=num/(Pow(10,j-1));


char *str=new char[i+1];
str[i]='\0';
str[0]=char(h+int('0'));
int m=1;
for(j=i-2; j>=0; j--)

num=char(n[j]+int('0'));
str[m]=char(num);
m++;

delete []n;
return str;

int main()

int num;
char *ch;
cin>>num;
ch=Itoa(num);//利用Atoi这个函数
cout<<ch<<endl;
delete ch; //记得这个啊 动态的啊
参考技术B 直接用函数stol或是atol,然后再把年月日分离输出!

JS中日期型与长整型是如何转换的

参考技术A JS中日期型与长整型是如何转换的 总结:在javascript中日期型与长整型互转
字串转日期型
var dTime = new Date(str.replace(new RegExp("-", "g"), "/"));
日期转长整型
var lTime =dTime.getTime();毫秒级
var lTime =parseInt(dTime.getTime()/1000);秒级
长整型毫秒转日期
(相对比较复杂,此外不再总结了,一般情况在JS里用不到)
如何把整型转换为日期型
不同的软体,函式不同,而且起始点日期也不同,写法结果都不同。
比如oracle用1970/01/01 为时间起点,10000的整型就是在这个时间起点上加10000秒,
to_date('1970/01/01','yyyy/MM/dd')+10000/24/60/60
oracle中的日期加减是用天来做单位的,所以后面要计算。
如果用C#的话
DateTime.MinValue.AddSeconds(10000) ,就可以获取初始日期之后,10000秒时间点的时间了。
其他的软体,有其他的写法。
java中关于字元型与日期型转换的问题!
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
日期转换成字串
String date = formatter.format(new Date());
字串转换日期
Date date = formatter.parse(dateTime);
ASP中怎么将datetime日期型转换为int整型?
ASP的日期比较要用DateDiff 函式,具体看下面的地址,我就不复制贴上了

<%
t1=Request.Form("T1")
t2=Request.Form("T2")
if Datediff("d",t1,t2)<=0 then
%>
<script>alert("结束时间必须大于开始时间!");</script>
<%end if%>
VB中日期型怎样转化为整型
用cint()函式可以进行转换
实型转换成双整型是怎么转换的?
实型转换成双整型转换方法:

一、问题分析:你的问题中“实型转化为整型”其实就是强制型别转换;

二、概念说明:强制型别转换是通过型别转换运算来实现的。其一般形式为: (型别说明符) (表示式) 其功能是把表示式的运算结果强制转换成型别说明符所表示的型别;

三、应用举例:
main()float a;a=3.1415926;(int)a; 转换后a=3,而不是3.1415926
原本的单精度实型变数a=3.1415926,经过(int)a语句强制转换为int整形变数后,a=3。
vb或sql 如何将非日期型转换成日期型
有两个位置要改:
1.'2008/8/10/'改成'2008/8/10'
2.datea改成convert(datetime,datea)
写成
select date1,data from t_a where convert(datetime,datea) beeen '2008/8/10' and '2008/10/12'
一般就可以了。
如果DATEA中的格式是
年/月/日
年-月-日
yymmdd
这三种格式一般都是可以的,如果不是的话,需要作一定的修改
delphi怎样将DateTimePicker1.date日期型转换成整型?
转换一下就可以了
formatdatetime('yyyymmdd',DateTimePicker1.datetime)

以上是关于在c++中怎么把字符串格式的时间转换成长整形时间的主要内容,如果未能解决你的问题,请参考以下文章

JS中日期型与长整型是如何转换的

JS中日期型与长整型是如何转换的

高手请进!如何把整形数据转换为字符串(C语言)?

在TC和VC中关于字符处理的区别!这里我们把字符型的数字转换成整形数字!

c++中如何将string中数字转换成整型的

Oracle中如何用SQL把字符串转换成整型