Fus*_*ion 0 c# textbox split newline
我遇到了一些问题.场景是我有一个多行文本框,我想把所有文本放在一个单独的字符串中,没有任何新行.这就是我现在所拥有的:
string[] values = tbxValueList.Text.Split('\n');
foreach (string value in values)
{
if (value != "" && value != " " && value != null && value != "|")
{
valueList += value;
}
}
Run Code Online (Sandbox Code Playgroud)
问题是无论我尝试什么和我做什么,我的字符串总会有一个新行(至少我认为?),所以不要得到:
"valuevaluevalue"
我明白了:
"
价值
价值".
我甚至试图用string.Replace和替换regex.Replace,但是唉也无济于事.请指教.
您诚挚的,
Kevin van Zanten
新行必须是"\ r \n".更好 - 使用Environment.NewLine.
但是代码效率低下,你创建了许多不必要的字符串和一个不必要的数组.只需使用:
tbxValueList.Text.Replace(Environment.NewLine, String.Empty);
Run Code Online (Sandbox Code Playgroud)
另一方面,如果你看到自己+=在字符串上使用运算符超过两次,那么你应该使用a StringBuilder.这是因为字符串是不可变的.