c# - C#让每个字母后面都有一个空格
问题描述
我写了一个代码,应该在每个字符之后写一个空格。但它看起来不像它正在工作。
foreach (char c in texttoencodedecode.Text)
{
c += " ";
texttoencodedecode.Text += c
}
可悲的是,这不起作用。c += ""; 输出错误。希望你能帮助我干杯。
解决方案
Thechar c
是单个字符(它是固定的,你不能有一个 zero-length char
,你不能有一个 two-length char
),所以你不能“添加”到它。你甚至不能修改你正在做的变量foreach
(所以你不能修改texttoencodedecode.Text
),你会Exception
在运行时得到一个。解决方案是写入一个新的临时变量,temp
然后重新texttoencodedecode.Text
分配temp
string temp = string.Empty;
foreach (char c in texttoencodedecode.Text)
{
temp += c;
temp += " ";
}
texttoencodedecode.Text = temp;
现在......通常你应该使用 a StringBuilder
,因为多次“附加”到 astring
是“坏的”(string
s 不是为它构建的):
var sb = new StringBuilder();
foreach (char c in texttoencodedecode.Text)
{
sb.Append(c);
sb.Append(' ');
}
texttoencodedecode.Text = sb.ToString();
推荐阅读
- json - 使用动态键的 Elasticsearch 嵌套对象模式设计
- reactjs - 用于 API 调用验证的 React 与 React Static
- c++ - 计算 AVL 树的平衡因子
- java - 如何将上传到 Firebase 云存储的图像的公共 URL 上传到实时数据库
- python - 如何以不同的方式对多个列进行分组以查找新事件?
- python - 如何在 Python 中使用 selenium webdriver 嵌入谷歌地图的网站中定位和单击标记?
- javascript - 如何将数组拆分为给定大小的块?(JavaScript)
- reactjs - 反应下拉列表 - 选定的值减一
- eol - 我在打印线上收到 EOL 错误。有人可以帮我吗?
- xml - 我如何选择哪个作为元素,哪个是属性