首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎么判断std:string的内容为空行

2013-01-23 
如何判断std::string的内容为空行?将全为半角或全角空格也视为空行,如何判断?[解决办法]#include iostrea

如何判断std::string的内容为空行?
将全为半角或全角空格也视为空行,如何判断?
[解决办法]


#include <iostream>
#include <string>

bool IsBlankLine(const std::string& str)
{
int len = str.length();
int pos = 0;
while (pos < len) {
if (str[pos] == ' ')
pos++;
// 这里仅是拿ANSI举例,全角空格是A1 A1
// 如果是utf文本的话,全角空格是E3 80 80 看文件开头是否EF BB BF,
// 也可能是没标志,不过utf和ansi很容易区分出来。
// 如果是unicode    ,全角空格是00 30 看文件开头是否是FF FE
else if ( str[pos] == '\xA1' && str[pos + 1] == '\xA1')
pos += 2;
else
return false;
}
return true;
}

int main()
{
using namespace std;
string str = "   ";
if (IsBlankLine(str))
cout << "Is blank line" << endl;
}

[解决办法]
什么意思?
没听懂?????
[解决办法]
那就判断空格的ascii码,1楼已经写出来了。

热点排行