如何在String.Format中使用变量
问题描述:
我想在循环中使用String.Format
,但它不允许我在String.Format
中定义变量i
。这里是我的代码如何在String.Format中使用变量
StringBuilder Sb;
for(i=0 ;i<=myObj.length;i++)
{
Sb=Sb.Append(String.Format("{i,5}",myObj[i].Tostring()));
}
答
要在Format
方法使用它,您可以使用对应的参数数组的索引号。
另外,不要重新分配Sb
,只需拨打Append
或AppendFormat
:
Sb.Append(String.Format("{0,5}", myObj[i].ToString()));
//or
Sb.AppendFormat("{0,5}", myObj[i].ToString());
如果你足够幸运地获得最新和最伟大的C#版本,你可以跳过Format
并用它做新string interpolation语法:
Sp.Append($"{myObj[i],5}");
或者因为你正在做的是填充,那么你也可以这样做:
Sb.Append(myObj[i].ToString().PadLeft(5));
这应该表明什么?你是否试图打印'i',然后是'myObj [i]'? – itsme86
我正在尝试生成固定宽度的文件。我是数组对象的索引或列 – TRA
这将会崩溃,因为' dasblinkenlight