dates_as_strings.cpp

来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 64 行

CPP
64
字号
/* The following is a simple example that shows conversion of dates  * to and from a std::string. *  * Expected output: * 2001-Oct-09 * 2001-10-09 * Tuesday October 9, 2001 * An expected exception is next:  * Exception: Month number is out of range 1..12 */#include "boost/date_time/gregorian/gregorian.hpp"#include <iostream>#include <string>intmain() {  using namespace boost::gregorian;  try {    // The following date is in ISO 8601 extended format (CCYY-MM-DD)    std::string s("2001-10-9"); //2001-October-09    date d(from_simple_string(s));    std::cout << to_simple_string(d) << std::endl;        //Read ISO Standard(CCYYMMDD) and output ISO Extended    std::string ud("20011009"); //2001-Oct-09    date d1(from_undelimited_string(ud));    std::cout << to_iso_extended_string(d1) << std::endl;        //Output the parts of the date - Tuesday October 9, 2001    date::ymd_type ymd = d1.year_month_day();    greg_weekday wd = d1.day_of_week();    std::cout << wd.as_long_string() << " "              << ymd.month.as_long_string() << " "              << ymd.day << ", " << ymd.year              << std::endl;    //Let's send in month 25 by accident and create an exception    std::string bad_date("20012509"); //2001-??-09    std::cout << "An expected exception is next: " << std::endl;    date wont_construct(from_undelimited_string(bad_date));    //use wont_construct so compiler doesn't complain, but you wont get here!    std::cout << "oh oh, you shouldn't reach this line: "               << to_iso_string(wont_construct) << std::endl;  }  catch(std::exception& e) {    std::cout << "  Exception: " <<  e.what() << std::endl;  }  return 0;}/*  Copyright 2001-2004: CrystalClear Software, Inc *  http://www.crystalclearsoftware.com * *  Subject to the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?