我正在尝试制作一系列完全相同长度的字符串。我正在尝试执行以下步骤:奇怪的字符串操作问题
- 如果字符串超过25个字符,请修剪多余的字符。
- 如果小于25,请用空格填充。
- 确保字符串的长度均为25个字符。
这里是我的代码(或至少是相关的位)
If Len(My.Settings.currOrder1) > 25 Then
My.Settings.currOrder1 = Microsoft.VisualBasic.Left(My.Settings.currOrder1, 25)
Else
My.Settings.currOrder1 = My.Settings.currOrder1 + " "
My.Settings.currOrder1 = Microsoft.VisualBasic.Left(My.Settings.currOrder1, 25)
End If
这在我的头应该工作。但是,如果我有6个字符的输入,然后7,然后8运行代码的3倍,输出我得到的是这样的:
这是很显然不是缩短东西(价格只是上涨了结束显示字符串结束的位置)。有任何想法吗?
使用try'My.Settings.currOrder1 =我的。 Settings.currOrder1.PadRight(25)'而不是添加然后修剪?它更整洁一点。但是无论如何,我认为问题是空间占用的空间比实际字符要少 –
我同意@ProGrammer; “PadRight”更简单,你应该尝试使用等宽字体来为每个字符设置相同的宽度。 – Sehnsucht