Vb.NET String.Format avec ArrayList
-
22-10-2019 - |
Question
Je suis en train d'utiliser un arraylist comme paramètre à 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)
où est un ArrayList param et le contenu sont ainsi (copiée à partir de la liste de surveillance):
+ (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
Mais ce code jette un FormatException
Index (zero based) must be greater than or equal to zero and less than the size of the argument list.
Ai-je tort qu'il est possible d'utiliser un arraylist? S'il est possible, des indices quant à la raison pour laquelle il serait lancer une telle erreur?
Merci
La solution
-t-il accepter une ArrayList
?
Avez-vous essayé:
"<td>{8}</td>", param.ToArray())
Autres conseils
Vous avez probablement besoin de passer dans un tableau d'objet et non un ArrayList. Si vous modifiez le code en tant que tel, vous pouvez voir ce qui se passe mal:
msg = msg & String.Format("<td>{0}</td>", param)
Il faut imprimer quelque chose comme
System.ArrayList Avez-vous essayé?
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())
Licencié sous: CC-BY-SA avec attributionNon affilié à StackOverflow![]()