0

我有一个最初是 CString 的 html/xml 文档,我想去掉所有的换行符,基本上把所有的东西都放在一行中。我尝试将其转换为 std::String 并使用:

#include <algorithm>
#include <string>

str.erase(std::remove(str.begin(), str.end(), '\n'), str.end());

但它没有用。

4

3 回答 3

4

为了阻止您的文本块看起来很奇怪,您需要用空格替换换行符。确保同时替换换行符('\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("  ", " ");
于 2012-07-31T10:57:33.870 回答
2

你只需要使用方法 remove

CString str = _T("Test newline \nremove"), str2;
str.Remove('\n');
于 2012-07-31T10:40:00.383 回答
0

怎么样?

str.Replace("\n", "");

记录在这里

于 2012-07-31T10:34:00.530 回答