我試圖添加空格結束在C#中的一串一串:填充使用PadRight方法
Trip_Name1.PadRight(20);
也試過:
Trip_Name1.PadRight(20,' ');
的這一切似乎工作。不過,我可以用任何其他字符來填充字符串。爲什麼?
我本來應該更具體,這裏是全碼:
lnk_showmatch_1.Text = u_trip.Trip_Name1.PadRight(20,' ');
我試圖添加空格結束在C#中的一串一串:填充使用PadRight方法
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問題的大討論。
編輯:
的這一切似乎工作。不過,我可以用任何其他字符來填充字符串。
你實際上重新分配給它像上面的例子嗎?如果是這樣的話 - 那麼沒有更詳細的我只能想到以下幾點:
編輯2:
我本來應該更具體
我會根據你所處理的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
。
@ user554134 - 我根據您的更新進行了一些更改。 – vcsjones
謝謝先生,白色空間:pre做到了! – Bruce
不適用於我。同樣的問題var str = INRECField.PadRight(11,'')+ INRECAccess.ToString(「MMddyy」)+ INRECSerial.PadRight(12,'')+ INRECSerial.PadRight(14,'')+ INRECAccessCode .PadRight(5,''); str = str.PadRight(32,''); – user2831855
請記住,這種方式不適用於任何字符串操作功能,因爲字符串是不可變的。他們只是返回一個新的字符串,而不是更新現有的實例。
PadRight返回左對齊字符中 此字符串通過填充它們與一個指定的Unicode字符 右側,對於一個指定的總長度的新字符串。
string Trip_Name1 = Trip_Name1.PadRight(20,' ');
編輯:
你的控制似乎修整結束空間。因此,請嘗試爲控件而不是文本設置填充。
什麼是測試中的Trip_Name1?這些方法的返回值是什麼(即*「似乎不起作用」*的意思)?你知道這些方法不會修改'Trip_Name1'的值,對吧? –
你能提供代碼示例嗎?順便說一下,字符串是不可變的,你必須重新分配填充後的結果值。 –
我應該更具體,這裏是完整的代碼: lnk_showmatch_1.Text = u_trip.Trip_Name1.PadRight(20,''); – Bruce