如何将ArrayList转换为字符串C#

时间:2011-12-14 10:14:30

标签: string c#-4.0 arraylist

ArrayList arr = new ArrayList();
string abc =

如何将arraylist转换为字符串,例如abc = arr;

更新的任务我可以完成工作的其他考虑因素是字符串的连接(以这种方式需要帮助)。假设我有一个字符串s =“abcdefghi ..”
通过在其上应用foreach循环并通过匹配某些条件并在字符串类型的某些insatnce变量中汇总每个char值来获取char string subString = +;
类似这样的事件string tem = string.Empty; string temp =string.Empty; temp = string.Concat(tem,temp);

3 个答案:

答案 0 :(得分:3)

使用一点linq并假设您的ArrayList包含string类型:

using System.Linq;

var strings = new ArrayList().Cast<string>().ToArray();

var theString = string.Join(" ", strings);

进一步阅读:

http://msdn.microsoft.com/en-us/library/57a79xd0.aspx

将其他类型转换为字符串:

var strings = from object o in myArrayList
              select o.ToString();

var theString = string.Join(" ", strings.ToArray());

Join方法的第一个参数是分隔符,我选择了空格。听起来你的字符应该没有分隔符,所以请改用""string.Empty

更新:如果要连接少量字符串,+=运算符就足够了:

var myString = "a";
myString += "b"; // Will equal "ab";

但是,如果您计划在紧密循环中连接不确定数量的字符串,请使用StringBuilder

using System.Text;

var sb = new StringBuilder();

for (int i = 0; i < 10; i++)
{
    sb.Append("a");
}

var myString = sb.ToString();

由于字符串的不变性,这避免了大量字符串创建的成本。

答案 1 :(得分:2)

查看string.Join(),与string.Split()

相反

您还需要将arr转换为string[],我想ToArray()可以帮助您实现这一目标。

答案 2 :(得分:0)

个人和记忆保存我会做连接:

        System.Collections.ArrayList Collect = new System.Collections.ArrayList();
        string temporary = string.Empty;
        Collect.Add("Entry1");
        Collect.Add("Entry2");
        Collect.Add("Entry3");

        foreach (String var in Collect)
        {
            temporary = temporary + var.ToString();  
        }
        textBox1.Text = temporary;