最近遇到了一个需求,需要将弹框显示的内容的某个字符标红显示,通过std::string的find方法一直无法找到该字符的正确位置,由于该字符串是后台下发的,换行符是\r\n,将该字符串写入文本文件中,然后拷贝一份该文件,在该文件末尾打个空格修改保存一下,读取这两个文本用char数组保存,发现拷贝修改的文件换行符少了\r,由此可推断Linux下换行符为\n,只需要将该字符串\r去掉即可正确显示:
left_str.erase(std::remove(left_str.begin(), left_str.end(), '\r'), left_str.end());