青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 96  文章 - 255  trackbacks - 0
<2008年2月>
272829303112
3456789
10111213141516
17181920212223
2425262728291
2345678

E-mail:zbln426@163.com QQ:85132383 長期尋找對戰略游戲感興趣的合作伙伴。

常用鏈接

留言簿(21)

隨筆分類

隨筆檔案

SDL相關網站

我的個人網頁

我的小游戲

資源下載

搜索

  •  

積分與排名

  • 積分 - 495350
  • 排名 - 39

最新評論

閱讀排行榜

評論排行榜

<本文PDF文檔下載>

C++的流和本地化策略集

BS在設計C++流的時候希望其具備智能化,并且是可擴展的智能化,也就是說,C++的流可以“讀懂”一些內容。比如:
std::cout << 123 << "ok" << std::endl;
這句代碼中,std::cout是能判斷出123是int而"ok"是const char[3]。利用流的智能,甚至可以做一些基礎類型的轉換,比如從int到string,string到int:
std::string str("123");
std::stringstream sstr(str);
int i;
sstr 
>> i;
int i = 123;
std::stringstream sstr;
sstr 
<< i;
std::
string str = sstr.str();
盡管如此,C++并不滿足,C++甚至希望流能“明白”時間,貨幣的表示法。而時間和貨幣的表示方法在世界范圍內是不同的,所以,每一個流都有自己的locale在影響其行為,C++中叫做激活(imbue,也有翻譯成浸染)。而我們知道,每一個locale都有多個facet,這些facet并非總是被use_facet使用的。決定使用哪些facet的,是流的緩存basic_streambuf及其派生類basic_stringbuf和basic_filebuf。我們要用到的facet是codecvt,這個facet只被basic_filebuf使用——這就是為什么只能用fstream來實現寬窄轉換,而無法使用sstream來實現的原因。
頭文件:
//filename string_wstring_fstream.hpp
#ifndef STRING_WSTRING_FSTREAM_HPP
#define STRING_WSTRING_FSTREAM_HPP

#include 
<string>

const std::wstring s2ws(const std::string& s);
const std::string ws2s(const std::wstring& s);

#endif
實現:
#include <string>
#include 
<fstream>
#include 
"string_wstring_fstream.hpp"

const std::wstring s2ws(const std::string& s)
{
    std::locale sys_loc(
"");

    std::ofstream ofs(
"cvt_buf");
    ofs 
<< s;
    ofs.close();

    std::wifstream wifs(
"cvt_buf");
    wifs.imbue(sys_loc);
    std::wstring wstr;
    wifs 
>> wstr;
    wifs.close();

    
return wstr;
}

const std::string ws2s(const std::wstring& s)
{
    std::locale sys_loc(
"");

    std::wofstream wofs(
"cvt_buf");
    wofs.imbue(sys_loc);
    wofs 
<< s;
    wofs.close();

    std::ifstream ifs(
"cvt_buf");
    std::
string str;
    ifs 
>> str;
    ifs.close();

    
return str;
}
在窄到寬的轉化中,我們先使用默認的本地化策略集(locale)將s通過窄文件流ofs傳入文件,這是char到char的傳遞,沒有任何轉換;然后我們打開寬文件流wifs,并用系統的本地化策略集(locale)去激活(imbue)之,流在讀回寬串wstr的時候,就是char到wchar_t的轉換,并且因為激活了sys_loc,所以實現標準窄到寬的轉換。
在寬到窄的轉化中,我們先打開的是寬文件流wofs,并且用系統的本地化策略集sys_loc激活(imbue)之,這時候,因為要寫的文件cvt_buf是一個外部編碼,所以執行了從wchar_t到char的標準轉換。讀回來的文件流從char到char,不做任何轉換。
posted on 2010-06-26 16:40 lf426 閱讀(3125) 評論(0)  編輯 收藏 引用 所屬分類: 語言基礎、數據結構與算法
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品日韩专区| 先锋影音一区二区三区| 欧美激情一区三区| 狂野欧美激情性xxxx欧美| 久久av最新网址| 久久精品99国产精品酒店日本| 午夜在线成人av| 久久久99精品免费观看不卡| 久久亚洲精品视频| 欧美—级a级欧美特级ar全黄| 欧美日韩精品不卡| 国产麻豆精品theporn| 韩国精品在线观看| 亚洲电影激情视频网站| 一本一道久久综合狠狠老精东影业 | 亚洲福利视频网站| 欧美成人一品| 夜夜夜久久久| 久久综合精品一区| 欧美涩涩网站| 亚洲国产精品精华液2区45| 99v久久综合狠狠综合久久| 亚洲欧美激情四射在线日| 久久一区亚洲| 亚洲一区二区黄色| 欧美激情一区二区三区| 国产女主播一区二区| 亚洲欧洲精品一区二区| 久久国产天堂福利天堂| 亚洲精品在线观看视频| 久热精品视频在线| 国产午夜精品美女毛片视频| 一区二区91| 老司机免费视频一区二区| 亚洲日本免费电影| 午夜精品久久久久久久| 欧美二区视频| 国模精品一区二区三区| 午夜精品理论片| 亚洲精品视频在线观看免费| 久久久久久久久久久成人| 国产精品国产三级欧美二区| 最近中文字幕日韩精品| 久久精品99| 在线视频一区二区| 欧美激情亚洲一区| 亚洲激情啪啪| 欧美粗暴jizz性欧美20| 欧美一区二区在线免费播放| 国产精品久久中文| 亚洲欧美日韩一区在线观看| 99av国产精品欲麻豆| 欧美肥婆bbw| 亚洲精品国产系列| 亚洲电影免费观看高清| 久久久久久婷| 激情综合色丁香一区二区| 久久久7777| 久久国产88| 狠狠狠色丁香婷婷综合久久五月| 午夜久久黄色| 亚洲欧美综合网| 国产日韩欧美制服另类| 久久精品国产99国产精品| 小黄鸭精品密入口导航| 国内视频一区| 欧美黄色网络| 欧美日本国产视频| 亚洲欧美国产日韩天堂区| 亚洲伊人伊色伊影伊综合网| 国产麻豆精品久久一二三| 久久频这里精品99香蕉| 久久免费视频这里只有精品| 亚洲国产一区二区三区青草影视 | 噜噜爱69成人精品| 亚洲日本电影在线| 9色porny自拍视频一区二区| 国产精品网站在线播放| 久久久久久久久久久一区| 久久亚洲风情| 亚洲性图久久| 久久国产综合精品| 亚洲日韩欧美视频一区| 亚洲视屏在线播放| 一区免费在线| 亚洲国产精品综合| 国产精品捆绑调教| 欧美大片免费观看| 国产精品九九久久久久久久| 久久全国免费视频| 欧美精品1区2区| 欧美一区二区三区精品| 亚洲第一精品影视| 欧美成人激情在线| 欧美人与禽猛交乱配| 亚洲欧美日韩高清| 久久九九免费| 亚洲综合导航| 久久久之久亚州精品露出| 一区二区三欧美| 久久久久国内| 亚洲欧美国产77777| 久久久九九九九| 亚洲综合日韩中文字幕v在线| 久久久国产91| 亚洲男人的天堂在线aⅴ视频| 久久亚洲精品中文字幕冲田杏梨| 亚洲影视综合| 欧美激情四色| 欧美二区在线看| 国产性猛交xxxx免费看久久| 亚洲精品一二三| 亚洲国产精品久久久久婷婷884| 亚洲香蕉网站| 亚洲午夜精品久久久久久浪潮| 久久婷婷国产综合精品青草| 亚洲欧美成人一区二区在线电影 | 国产午夜精品一区二区三区欧美 | 久久三级福利| 久久精品国产91精品亚洲| 欧美丝袜第一区| 亚洲精品久久久久久久久| 在线观看日韩欧美| 久久大综合网| 久久九九免费| 国产亚洲精品美女| 亚洲欧美在线网| 亚洲欧美精品在线观看| 欧美日韩一二三四五区| 亚洲国产毛片完整版 | 欧美精品自拍偷拍动漫精品| 免费看亚洲片| 亚洲第一视频| 久久性色av| 女生裸体视频一区二区三区| 国内外成人在线| 久久精品成人欧美大片古装| 久久精品国产亚洲一区二区| 国产精品网站在线| 亚洲欧美日韩天堂| 久久黄色网页| 国外成人在线视频| 久久久青草青青国产亚洲免观| 久久久噜噜噜久久中文字幕色伊伊| 国产伦理一区| 久久人人爽国产| 亚洲人成网站777色婷婷| 亚洲美女毛片| 欧美视频国产精品| 亚洲综合精品四区| 久久久国产精彩视频美女艺术照福利 | 亚洲一区二区三区精品动漫| 欧美在线视频二区| 久久精品国产第一区二区三区| 亚洲一级片在线观看| 国产精品成人在线| 午夜精品久久久久| 免费日韩av电影| 亚洲日本va在线观看| 欧美日韩亚洲免费| 香蕉久久a毛片| 欧美成人综合网站| 亚洲性人人天天夜夜摸| 国产最新精品精品你懂的| 久久久久久国产精品一区| 欧美激情第1页| 亚洲女人小视频在线观看| 国内精品久久久久久久影视麻豆| 麻豆精品网站| 亚洲欧美日产图| 亚洲国产1区| 性欧美大战久久久久久久久| 影音先锋日韩资源| 国产精品www色诱视频| 久久久激情视频| 在线综合亚洲欧美在线视频| 久久三级福利| 亚洲欧美成人精品| 亚洲精品日韩在线| 国产一级一区二区| 欧美日韩一区国产| 久久久噜噜噜久久中文字免| 99国产精品久久久久久久成人热| 久久久国产精品一区二区中文 | 亚洲精品一级| 国产亚洲福利一区| 欧美日韩一区二区在线播放| 久久人人97超碰国产公开结果| 亚洲性感美女99在线| 91久久亚洲| 免费不卡在线观看| 欧美专区在线播放| 亚洲伊人第一页| 一本色道久久综合亚洲精品不| 一区二区三区在线免费观看| 国产精品亚洲а∨天堂免在线| 欧美人成在线| 欧美激情第一页xxx| 美国十次了思思久久精品导航| 香蕉尹人综合在线观看|