在C#中如何将含换行符\n的日期字符串转为斜杠分隔格式?
问题解决:替换字符串中的换行符失败
你的问题出在字符串转义的理解偏差上:
- 你定义的
string data = "17\n06\n1988";里的\n是C#的转义字符,代表实际的换行符(LF),不是字面量的\加n两个字符。 - 而你用的
data.Replace(@"\n","/")里,@"\n"是字面量字符串,匹配的是\和n组成的字符序列,自然找不到目标替换内容。
正确的解决方案
直接替换实际的换行符即可,去掉@符号:
string data = "17\n06\n1988"; data = data.Replace("\n", "/"); // 输出:17/06/1988
如果你的字符串可能包含Windows风格的换行符(\r\n),可以用Environment.NewLine兼容不同平台:
string data = "17\n06\n1988"; data = data.Replace(Environment.NewLine, "/");
内容的提问来源于stack exchange,提问作者dotnetdev1
相关产品推荐
相关产品推荐

