现在的位置: 首页 > 综合 > 正文

Boost文件读写,断言、日期

2013年07月13日 ⁄ 综合 ⁄ 共 1314字 ⁄ 字号 评论关闭
#include "stdafx.h"

//#define BOOST_DISABLE_ASSERTS
#define BOOST_ENABLE_ASSERT_HANDLER

#include <iostream>
#include <boost/thread/thread.hpp>
#include <string>
#include <vector>
#include <boost/algorithm/string.hpp>
#include <boost/lexical_cast.hpp>
#include <fstream>
#include <exception>

using namespace boost;
using namespace std;

namespace boost{
void assertion_failed(char const * expr, char const * function, char const * file, long line) // user defined
{
	cout<<"@@@@@@@@@@@@@@@@@@"<<endl;
}
}
int main() 
{
	try
	{
		ifstream file;

	wstring file_name = _T("test.txt");
	file.open(file_name.c_str(),ios::in);

	string line;
	while(!file.eof())
	{
		getline(file, line);
		cout<<line<<endl;

		vector<string> results;
		split(results,line,is_any_of(" "));

		if(results.size()==3)
		{
			for (vector<string>::const_iterator p=results.begin();
			p!=results.end();
			++p)
			{
				double d=boost::lexical_cast<double>(*p);
				cout<<d<<endl;
			}
		}
	}

	file.clear();
	file.close();
	}
	catch (std::exception& e)
	{
		cout<<e.what()<<endl;
	}




		// today is 2009/5/12
		boost::gregorian::date today = 
			boost::gregorian::day_clock::local_day();
		boost::gregorian::greg_month month =  today.month();
		boost::gregorian::greg_day day =  today.day();
		boost::gregorian::greg_year year =  today.year();



		cout << day.as_number() << endl;  // 12
		cout << month.as_number() << endl; // 5
		cout << (unsigned short)year << endl; // 5
		cout << month.as_short_string() << endl; // May 
		cout << month.as_long_string() << endl;  // May 

		BOOST_ASSERT(0);

}

抱歉!评论已关闭.