易截截图软件、单文件、免安装、纯绿色、仅160KB

宽字符支持(linux,MinGW,Qt)


1。要使用宽字符支持,使用w开头的一系列东西,如wstring,wofstream等。在使用wstring的时候,常量字符串前面要加上L,这样才能转换成wchar_t型的
else if(fileName.substr(fileName.rfind(L"."))==L".prj")
2。一个文件流(无论是ofstream还是wofstream),只支持const char*作为文件名,对于宽字符的wstring的文件名,该做一些处理。
 DTchar mbsFileName[512];
 DTint mbsSize=std::wcstombs(mbsFileName,m_dumpFileName.c_str(),m_dumpFileName.size()*sizeof(wchar_t));
 mbsFileName[mbsSize]=0;
 m_pDumpStream=new std::fstream(mbsFileName,std::ios::out|std::ios::binary);
上面的代码要注意的是,wcstombs转换后的char序列并没有0字符串结尾符,所以拿出去直接当字符串使用会出错。
或者“You can use wcstombs() to narrow the filename or if you're feeling adventurous, the narrow() member function of the ctype facet of a std::locale.”
见http://www.gamedev.net/community/forums/topic.asp?topic_id=358254&whichpage=1?
3。MinGW不支持wchar_t,好像是因为linux下的wchar_t是4字节的,而windows下vc运行时的wchar_t是2字节的。
见Qt中qstring.cpp中的一段doxygen注释
#ifndef QT_NO_STL
/*! fn QString QString::fromStdWString(const std::wstring &str)
    Returns a copy of a str. a str is assumed to be encoded in
    utf16 if the size of wchar_t is 2 bytes (e.g. on windows) and ucs4
    if the size of wchar_t is 4 bytes (most Unix systems).
    This constructor is only available if Qt is configured with STL
    compabitility enabled.
    sa fromUtf16(), fromLatin1(), fromLocal8Bit(), fromUtf8()
*/
见MinGW的官方声明:http://www.mingw.org/MinGWiki/index.php/wide%20characters
其中还有2个连接。
另外:一个hp的家伙hack的方法:
http://lists.zerezo.com/mingw-users/msg00753.html
很复杂,我又不懂,唉。。。。绝望。
在linux下的支持宽字符的,没法在windows下移植了。。。。。。。。。。
4.MinGW下的Qt是支持宽字符的,我还测试了一下,如果文件路径中含有“桌面”二字,我的非宽字符支持的程序会r


相关文档:

Linux下用Busy Box制作Ramdisk全过程

  -------------------------------------------------------------------------------------------------------
//By:yuyongbao
//QQ:673360056
Linux下用Busy Box制作Ramdisk全过程
1 建立根文件系统结构
#mkdir rootfs
#cd rootfs
#mkdir bin dev etc lib proc sbin tmp usr var
#chmod 1777 tmp
#mk ......

Linux设备驱动学习-Davinci开发板上运行的hello模块


Linux设备驱动学习-Davinci开发板上运行的hello模块
 
看了很多个hello world了,自己来写一个在davinci板块上跑的吧。
主体很简单,就是一个C文件hello_davinci.c。
/*================hello_davinci.c==============*/
#include <linux/module.h>  /*所有模块都需要的头文件*/
#include <lin ......

轻型Linux大放光彩






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
         
Linux
世界很精彩,令人眼花缭乱。近期以来,各种轻型
Linux
版本不断登台亮相,知名的
Puppy
(小狗之名)便是一例。何故?
 
     ......

Linux源码中的mktime算法解析

  我们知道,从CMOS中读出来的系统时间并不是time_t类型,而是类似于struct tm那样,年月日时分秒是分开存储的。
    那么,要把它转化为系统便于处理的time_t类型,就需要算法进行转换。
    我们都知道我们的公历还是比较复杂的,有大月小月,有闰年非闰年,处理起来会很麻烦。
&n ......

linux 硬链接 软链接

linux中关于链接类型分为硬链接和软链接
  硬链接指令 ln  文件  链接名称
  软链接指令 ln -s 文件  链接名称
共同点:
  都可以通过链接名称去访问被链接的文件
不同点:
  硬链接会产生一个和源文件相同的文件 不论大小和属性
  删除源文件不会对链接文件产生影响
&nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号