Vb.net string.format con ArrayList
-
22-10-2019 - |
Pregunta
Estoy tratando de usar una ArrayList como parámetro para 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)
donde param es una lista de matrices y los contenidos están, por lo tanto (copiados de la lista de vigilancia):
+ (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
Pero este código arroja una FormateException
Index (zero based) must be greater than or equal to zero and less than the size of the argument list.
¿Me equivoco de que sea posible usar una ArrayList? Si es posible, ¿alguna pista de por qué estaría lanzando tal error?
Gracias
Solución
¿Acepta un ArrayList
?
Has probado:
"<td>{8}</td>", param.ToArray())
Otros consejos
Probablemente necesite pasar en una matriz de objetos y no en una lista de matrices. Si cambia el código como tal, puede ver lo que va mal:
msg = msg & String.Format("<td>{0}</td>", param)
Debería imprimir algo como
<TD> System.ArrayList <TD>
¿Has probado esto?
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())
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow