vc为我们提供了两种日期型的变量。

一种是CTime。他的缺点就是年份只支持到2038年,以后的日期就不支持啦,如果你的项目有20-30年的寿命,你就选择使用SYSTEMTIME.这个时间函数来进行比较还有转换。

一种是SYSTEMTIME。

在比较的时候都不能直接比较。看一下第一种CTime .

CTime timeFrom;
m_dateFrom.GetTime(timeFrom);

CTime timeTo;
m_dateTo.GetTime(timeTo);

CTimeSpan timeSpan=timeTo-timeFrom;
    if(timeSpan.GetDays()<0)
{
        AfxMessageBox(_T("Date illegal"));
return;
}

代码就不解释啦。

转换成日期格式

CString dateFrom=timeFrom.Format(_T("%Y-%m-%d"));

CString dateTo=timeTo.Format(_T("%Y-%m-%d"));

这样你就可以查询两个日期之间的数据啦。

再看一下,SYSTEMTIME的比较,还是转换成日期格式。

一样也是定义两个变量。

SYSTEMTIME timeFrom,timeTo;
m_dateFrom.GetTime(&timeFrom);
m_dateTo.GetTime(&timeTo);

但是这两个时间怎么比较呢,查了好多资料,都是要转换成CTime进行比较。

这样字就没有意义啦。

再在来介绍一种内存比较方法。

两个日期进行内存比较就可以判断出大小来。也不用费事去转换。

int re=memcmp(&timeFrom,&timeTo,sizeof(SYSTEMTIME));
if (re>0)
{
AfxMessageBox(_T("Date illegal"));
return;
}

如果是re>0就说明第一个选择的日期比第二个大。

如果是re<0就说明第一个选择的日期比第二个小。

如果是re=0就说明第一个选择的日期等于第二个。

下来看一下怎么把SYSTEMTIME转换成日期格式xxxx-xx-xx

先来看一下他的几种写法分别出来的效果是什么样子的。

VariantTimeToSystemTime(NULL,&timeFrom);

如果是这样写的话,不管你的日期选择的是哪一天,永远都是一天,是哪一天呢。1899-12-30日。

加个这个看看行不行

COleDateTime oleTime;

VariantTimeToSystemTime(oleTime,&timeFrom);

结果运行结果还是一样,还是那一天。

就没有解决办法了吗?

看一下这样定义行不行。

DATE date;

VariantTimeToSystemTime(date,&timeFrom);

CString dateFrom;
dateFrom.Format(_T("%04u-%02u-%02u"),timeFrom.wYear,timeFrom.wMonth,timeFrom.wDay);

这样就可以完全显示成XXXX-xx-xx的格式啦。

CTime,Systemtime的比较还有转换成日期格式。的更多相关文章

  1. js angular 时间戳转换成日期格式 年月日 yyyy-MM-dd

    昨天写项目,要把时间戳转换成日期格式发给后端 我就去网上找 看到的一些都不是我想要的 索性自己就写了一个如图 下面是angular 模式 $scope.getMyDate = function(str ...

  2. js将时间戳转换成日期格式-陈远波

    var timestamp =1539598555000;//时间戳 //时间戳转换成time格式function timestampToTime(timestamp) { var date = ne ...

  3. js 将long型字符串转换成日期格式

    工作中难免会碰到日期的转换,往往为了方便,后台都是把时间以long型(形如1343818800000)返回给web前端.再有前端自己根据页面需求转换成相应的日期格式.这里将我常用的一个转换时间的函数贴 ...

  4. 让用户输入一个日期字符串,将其转换成日期格式, 格式是(yyyy/MM/dd,yyyyMMdd,yyyy-MM-dd)中的一种, 任何一种转换成功都可以; 如果所有的都无法转换,输出日期格式非法。

    第三种方法 while(true) {             Date d;        System.out.println("正在进行第一次匹配,请稍后~—~");     ...

  5. Java毫秒转换成日期格式

    import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.uti ...

  6. vue项目中将后台返回的创建时间(时间戳格式)转换成日期格式

    第一步:下载安装依赖包 npm install -save moment 第二步: 在main.js文件引入 1. import moment from 'moment' 其中还包含 2. //全局过 ...

  7. javaScript中将时间戳转换成日期格式

    function DateFormt(time, format) { ); var o = { , "d+": testDate.getDate(), "h+" ...

  8. jqgrid 时间戳转换成日期格式

    原文 :http://blog.csdn.net/caoyuancsdn/article/details/52984524 Java script  接收到的时间参数是时间戳*1000 functio ...

  9. [转] String to Date conversion in hive - 在 Hive 中各种字符串转换成日期格式

    [From] http://bigdataprogrammers.com/string-date-conversion-hive/ Please refer below table to conver ...

随机推荐

  1. UIWebView取消长按放大(用于长按识别二维码)

    禁用长按UIWebView时放大镜及选择功能: //通过js调用 - (void)webViewDidFinishLoad:(UIWebView*)webView { // Disable user ...

  2. Ext Sencha Cmd 6 环境安装

    Sencha Cmd安装笔记 在使用前端框架ExtJs前,需对其环境加以部署,对自己的安装过程加以记录. 建议大家在安装时,最好使用VPN,个中缘由,生在跳槽的程序袁应该都懂吧.不然ruby相关命令执 ...

  3. zepto源码研究 - callback.js

    简要:$.Callbacks是一个生成回调管家Callback的工厂,Callback提供一系列方法来管理一个回调列表($.Callbacks的一个私有变量list),包括添加回调函数, 删除回调函数 ...

  4. Websocket 与代理服务器如何交互? How HTML5 Web Sockets Interact With Proxy Servers

    How HTML5 Web Sockets Interact With Proxy Servers Posted by Peter Lubberson Mar 16, 2010 With the re ...

  5. 通过 Xftp5 管理 centOS 7 文件

    一. 在安装好了centOS 7 的服务上,打开终端 运行 ip -s addr 命令 获取服务的IP地址 [root@localhost ~]# ip -s addr1: lo: <LOOPB ...

  6. C语言基础文件读写操作

    整理了一份C语言的文件读写件操作代码,测试时打开相应的注释即可. #include <stdio.h> #include <stdlib.h> #include <uni ...

  7. UI基础 - UINavigationController

    如果导航控制器的BarButtonItem属性是一致的,可以重写initialize方法用来设置主题 //再ViewDidload执行前只执行一次 +(void)initialize { //创建的U ...

  8. asp.net(C#)写SQL语句技巧

    /*添加SQL*/string fields = "";string values = "";fields += "xm"; values ...

  9. zoj 3785 What day is that day?

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5272 打表找规律. #include <cstdio> #incl ...

  10. RUBY,玩玩~~~

    我觉得吧,这东瀛的红宝石,也得玩玩,毕竟,RUBY ON RAILS,PUPPET等也是一股力量. 作为混IT圈的,知道总没坏处. 就是感觉和C,C++,JAVA,C#,PHP,甚至PYTHON的感觉 ...