Vb.NET String.Format с ArrayList
-
22-10-2019 - |
Вопрос
Я пытаюсь использовать список массивов в качестве параметра String.Format.
msg = msg & String.Format("<td>{0}</td>" & _
"<td>{1}</td>" & _
"<td>{2}</td>" & _
"<td>{3}</td>" & _
"<td>{4}</td>" & _
"<td>{5}</td>" & _
"<td>{6}</td>" & _
"<td>{7}</td>" & _
"<td>{8}</td>", param)
где param — это ArrayList, а содержимое, таким образом, (скопировано из списка наблюдения):
+ (0) 9 {Integer} Object
+ (1) 3 {Integer} Object
+ (2) 5 {Integer} Object
+ (3) "180" {String} Object
+ (4) 0D {Decimal} Object
+ (5) 6.788D {Decimal} Object
+ (6) #3/13/2009# {Date} Object
+ (7) "2004" {String} Object
+ (8) "" {String} Object
Но этот код выдает FormatException
Index (zero based) must be greater than or equal to zero and less than the size of the argument list.
Я ошибаюсь, что можно использовать массив?Если это возможно, есть какие-нибудь подсказки относительно того, почему возникает такая ошибка?
Спасибо
Решение
Принимает ли он ArrayList
?
Ты пробовал:
"<td>{8}</td>", param.ToArray())
Другие советы
Вероятно, вам нужно передать массив объектов, а не ArrayList.Если вы измените код как таковой, вы увидите, что происходит не так:
msg = msg & String.Format("<td>{0}</td>", param)
Должно быть напечатано что-то вроде
< td>System.ArrayList< td>
Вы пробовали это?
msg = msg & String.Format("<td>{0}</td>" & _
"<td>{1}</td>" & _
"<td>{2}</td>" & _
"<td>{3}</td>" & _
"<td>{4}</td>" & _
"<td>{5}</td>" & _
"<td>{6}</td>" & _
"<td>{7}</td>" & _
"<td>{8}</td>", param.ToArray())
Не связан с StackOverflow