【问题标题】:Vb.NET String.Format with ArrayList带有 ArrayList 的 Vb.NET String.Format
【发布时间】:2010-06-01 14:57:55
【问题描述】:

我正在尝试使用数组列表作为 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.

我错了,可以使用数组列表吗?如果可能的话,有什么线索说明它为什么会抛出这样的错误?

谢谢

【问题讨论】:

    标签: vb.net arraylist string.format


    【解决方案1】:

    它是否接受ArrayList

    你试过了吗:

     "<td>{8}</td>", param.ToArray())
    

    【讨论】:

    【解决方案2】:

    您可能需要传入对象数组而不是 ArrayList。如果您这样更改代码,您可能会看到出了什么问题:

     msg = msg & String.Format("<td>{0}</td>", param)
    

    它应该打印类似

    System.ArrayList

    你试过了吗?

     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())
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-20
      • 1970-01-01
      • 2010-10-30
      • 1970-01-01
      • 2012-06-16
      • 2016-05-03
      • 1970-01-01
      相关资源
      最近更新 更多