我有这段代码
String coNum = customerOrderLine.coNum.PadLeft(10 - customerOrderLine.coNum.Length);
我知道customerOrderLine.coNum = "123456"
所以我应该最终得到coNum在它前面有4个空格但我最终得到的是“123456”。我该如何解决?我试过PadRight
以防万一是错误而且也无法工作。我必须在开头有4个空格,将它传递给我正在处理的API,否则它将失败。
答案 0 :(得分:5)
PadLeft将总长度作为参数,因此我认为您需要
String coNum = customerOrderLine.coNum.PadLeft(10);
答案 1 :(得分:1)
这是因为您错误地指定了Pad *方法的totalWidth
参数。
来自docs:
结果字符串中的字符数,等于数字 原始字符加上任何其他填充字符。[...]如果totalWidth等于此实例的长度,则为方法 返回一个与此实例相同的新字符串。
答案 2 :(得分:0)
PadLeft未指定要填充的默认字符;你的第二个参数应该是用于填充的字符,即:
String coNum = customerOrderLine.coNum.PadLeft(10, ' ');
编辑:根据@Matthew的回答,第一个参数应该是所需的总长度,而不是要添加的填充字符数。