あなたの問題はi
まだ整数であり、文字列に割り当てる必要があります
for (int i = 1; i <= 36; i++)
{
var iString = i.ToString();
if(iString.Length == 1)
{
iString = iString.PadLeft(2,'0'); //RIGHT HERE!!!
}
Response.Write("Test: " + iString);
}
ただし、このコードの多くは不必要であり、if
ステートメントは必要ありません。パッドは、指定された長さ (2) までのゼロでのみペディングされます。すでに 2 文字以上の長さの場合は、何も埋め込まれません。必要なのはこれだけ
for (int i = 1; i <= 36; i++)
{
var iString = i.ToString().PadLeft(2,'0');
Response.Write("Test: " + iString);
}
さらに言えば、変数はもう必要ありません。
for (int i = 1; i <= 36; i++)
{
Response.Write("Test: " + i.ToString().PadLeft(2,'0'));
}
そして、他の文字ではなく、常にゼロでパディングする場合は、これを行うことができます
for (int i = 1; i <= 36; i++)
{
Response.Write("Test: " + i.ToString("00"));
}
そして、あなたは使用する習慣を身につけるべきですstring.Format
for (int i = 1; i <= 36; i++)
{
Response.Write(string.Format("Test: {0}", i.ToString("00")));
}
string.Format
さらに単純化するには、次のようにします。
for (int i = 1; i <= 36; i++)
{
Response.Write(string.Format("Test: {0:00}", i));
}