环境:win32命令行程序, unicode编码
功能:比较字符串,忽略大小写
限制:windows平台,不使用MFC库函数
#include <string>
using namespace std;
#include <string.h>
BOOL Getfilesuffix(const TCHAR* pFilePath)
{
wstring str(pFilePath);
str = str.substr(str.find_last_of('\\') + 1); //找到路径中的文件名
str = str.substr(str.find_first_of('.') + 1); //找到文件名中的后缀,从第一个字符 '.' 开始计算
if (0 != _wcsicmp(L"Text", str.c_str()))
return FALSE;
return TRUE;
}
int main()
{
WCHAR* pName = "c:\haha\xixi.text";
if(TRUE == Getfilesuffix(pName))
{
printf("The file is correct!\n");
}
return 0;
}
说明:其中_wcsicmp是C的函数,wstring 是c++的函数,因为wstring 本身没有忽略大小写的比较,MFC倒是有,但是此例子用不起来,所以
只好结合C函数来处理。