2011-12-14 178 views
-1
ArrayList arr = new ArrayList(); 
string abc = 

我应该怎么做将数组列表转换为字符串,如abc = arr;

已更新的任务我可以完成我的工作的其他考虑因素是字符串的连接(需要这种帮助)。假设我有一个
字符串s =“abcdefghi ..”
通过对它应用foreach循环并通过匹配某些条件并在字符串类型
的一些insatnce变量中匹配某个条件来获取char,例如string subString = +;
像这样
string tem = string.Empty; string temp =string.Empty; temp = string.Concat(tem,temp);如何将一个ArrayList转换为字符串C#

+1

那你希望字符串包含哪些内容? ArrayList中每个元素的字符串表示形式? – 2011-12-14 10:16:33

+0

我从某个循环为我的arrraylist提供了char类型的值。现在我想分配这个ArrayList集合到字符串abc – RollerCosta 2011-12-14 10:26:49

+0

@Gimmebrkk虽然它应该是一个单独的问题,但我已经更新了我的答案。 – 2011-12-14 10:57:58

回答

1

使用小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(); 

这样就避免了很多串创作的成本由于字符串不变性。

2

查找到string.Join()string.Split()

相反,您还需要转换你的arrstring[],我想这ToArray()将帮助你做到这一点。

1

个人和记忆保存我会为串联做:

 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; 
相关问题