gpt4 book ai didi

c# - 使用 PadRight 方法填充字符串

转载 作者:IT王子 更新时间:2023-10-29 04:54:18 26 4
gpt4 key购买 nike

我正在尝试在 C# 中的字符串末尾添加空格:

Trip_Name1.PadRight(20);

还试过:

Trip_Name1.PadRight(20,' ');

这些似乎都不起作用。但是我可以用任何其他字符填充字符串。为什么?

我应该更具体一些,这里是完整的代码:

lnk_showmatch_1.Text = u_trip.Trip_Name1.PadRight(20,' ');

最佳答案

字符串是immutable , 它们无法更改。 PadRight 返回填充字符串的新实例,而不是更改调用它的字符串。你想要的是这个:

Trip_Name1 = Trip_Name1.PadRight(20,' ');

关于 this 的讨论很精彩关于为什么字符串不可变的 StackOverflow 问题。

编辑:

None of this seems to work. However I can pad the string with any other character.

你真的像上面的例子那样重新分配它吗?如果是这样 - 那么没有更多细节我只能想到以下内容:

  1. 如果您将其存储在数据库中并进行检索,一些具有正确设置的数据库可能会为您“修剪”。
  2. 您在其他地方有修剪空白的逻辑。这在处理用户输入时很常见。

编辑 2:

I should have been more specific

我将根据您正在处理 HTML/ASP.NET 的命名约定来大胆猜测。在大多数情况下,在 HTML 中 - white space is collapsed .例如:

<div><a>Hello           World</a></div>
<div><a>Hello World</a></div>

两个 a 标签将呈现相同的内容,因为空白正在折叠。如果您确实在使用 HTML - 这可能是您的原因以及填充适用于所有其他字符的原因。如果您查看呈现的标记的源代码 - 它是否包含额外的空格?

如果您想保留空格,请尝试在名为 white-space 的元素上应用 CSS 样式并将其设置为 pre。例如:

<a style="white-space:pre">hello     world      </a>

这将导致保留空白。请记住,像这样使用空白有缺点。浏览器不会以相同的方式呈现它们,等等。我不会将其用于布局目的。考虑改用 CSS 和类似 min-width 的东西。

关于c# - 使用 PadRight 方法填充字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7303668/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com