我有一个数组
ArrayList array = new ArrayList();
array.Add("a");
array.Add("b");
array.Add("c");
我有一个字符串变量 refFormat ,其格式如下。
string refFormat = "{2} {0}";
我试图用这种格式从数组中获取一串值。以下是我写的内容。
string newStr = String.Format(refFormat,array.ToArray());
我在尝试这样做时遇到以下异常。
索引(从零开始)必须大于或等于零且小于参数列表的大小。
我知道这个问题听起来很重复,但我怀疑的是如何从数组中选择其索引是以 2 和 0 格式指定的值。请帮忙..
修改:抱歉提出错误的问题。我使用arraylist而不是字符串数组我尝试相同。尽管使用ToArray()将其转换为数组,我仍然得到异常。我哪里错了?而且我也不能在这里使用List而不是arraylist,因为数组包含不同类型的数据。请帮帮我......
答案 0 :(得分:5)
作为参考,这里也是我的工作代码:
string[] array = new string[] { "a", "b", "c", "d" };
string refFormat = "{2} {0}";
string newStr = String.Format(refFormat, array);
Console.WriteLine(newStr);
运行上面的代码时没有遇到错误。
答案 1 :(得分:0)
您没有正确提供参数,需要将其编入索引为{0} {1}等等
String.Format(refFormat,array[2],array[0]);