我有一个最初是 CString 的 html/xml 文档,我想去掉所有的换行符,基本上把所有的东西都放在一行中。我尝试将其转换为 std::String 并使用:
#include <algorithm>
#include <string>
str.erase(std::remove(str.begin(), str.end(), '\n'), str.end());
但它没有用。
为了阻止您的文本块看起来很奇怪,您需要用空格替换换行符。确保同时替换换行符('\n') 和回车符('\r') 字符。
CString str = "Line 1 Windows Style\r\n Line 2 Unix Style\n Line 3";
str.Replace('\r', " ");
str.Replace('\n', " ");
str.Replace(" ", " ");
你只需要使用方法 remove
CString str = _T("Test newline \nremove"), str2;
str.Remove('\n');