70 lines
1.7 KiB
C++
70 lines
1.7 KiB
C++
|
// filesystem tut5.cpp ---------------------------------------------------------------//
|
||
|
|
||
|
// Copyright Beman Dawes 2010
|
||
|
|
||
|
// Distributed under the Boost Software License, Version 1.0.
|
||
|
// See http://www.boost.org/LICENSE_1_0.txt
|
||
|
|
||
|
// Library home page: http://www.boost.org/libs/filesystem
|
||
|
|
||
|
#include <boost/filesystem/fstream.hpp>
|
||
|
#include <string>
|
||
|
#include <list>
|
||
|
|
||
|
namespace fs = boost::filesystem;
|
||
|
|
||
|
int main()
|
||
|
{
|
||
|
// \u263A is "Unicode WHITE SMILING FACE = have a nice day!"
|
||
|
std::string narrow_string("smile2");
|
||
|
std::wstring wide_string(L"smile2\u263A");
|
||
|
std::list< char > narrow_list;
|
||
|
narrow_list.push_back('s');
|
||
|
narrow_list.push_back('m');
|
||
|
narrow_list.push_back('i');
|
||
|
narrow_list.push_back('l');
|
||
|
narrow_list.push_back('e');
|
||
|
narrow_list.push_back('3');
|
||
|
std::list< wchar_t > wide_list;
|
||
|
wide_list.push_back(L's');
|
||
|
wide_list.push_back(L'm');
|
||
|
wide_list.push_back(L'i');
|
||
|
wide_list.push_back(L'l');
|
||
|
wide_list.push_back(L'e');
|
||
|
wide_list.push_back(L'3');
|
||
|
wide_list.push_back(L'\u263A');
|
||
|
|
||
|
{
|
||
|
fs::ofstream f("smile");
|
||
|
}
|
||
|
{
|
||
|
fs::ofstream f(L"smile\u263A");
|
||
|
}
|
||
|
{
|
||
|
fs::ofstream f(narrow_string);
|
||
|
}
|
||
|
{
|
||
|
fs::ofstream f(wide_string);
|
||
|
}
|
||
|
{
|
||
|
fs::ofstream f(narrow_list);
|
||
|
}
|
||
|
{
|
||
|
fs::ofstream f(wide_list);
|
||
|
}
|
||
|
narrow_list.pop_back();
|
||
|
narrow_list.push_back('4');
|
||
|
wide_list.pop_back();
|
||
|
wide_list.pop_back();
|
||
|
wide_list.push_back(L'4');
|
||
|
wide_list.push_back(L'\u263A');
|
||
|
{
|
||
|
fs::ofstream f(fs::path(narrow_list.begin(), narrow_list.end()));
|
||
|
}
|
||
|
{
|
||
|
fs::ofstream f(fs::path(wide_list.begin(), wide_list.end()));
|
||
|
}
|
||
|
|
||
|
return 0;
|
||
|
}
|