0

我想在 wstring 中找到制表符。

然而

int n =mywstring.find(L"\t");

不起作用,“n”是-1,尽管我知道制表符存在于 wstring 中。

我在这里想念什么?

感谢您的帮助!

编辑:

我发现问题出在我从文件中读取 wstring 的方式上。

我在用

bool GetLineW(FILE *inFile, wstring &result)
{
wchar_t data[2]={0,0};

result = L"";
do{
    fread(data, sizeof(wchar_t), 1, inFile);

    if (data[0]>=L' ')
        result += data;

    if (data[0]==0x0A)
        break;
}while(!feof(inFile));

if (result.size()>0)
    return true;
else
    return false;
}
4

1 回答 1

2

wstring::find并在未找到字符的情况下string::find返回npos,相当于 -1。

返回值 0 表示已在字符串的第一个索引处找到该字符,因为索引从 0 开始。

于 2013-05-22T14:41:58.303 回答