很多时候开发中会用到把 List<string> 的内容拼接成以逗号分隔的字符串的形式, 几年来一直习惯了直接拼,今天才知道了更简洁的办法。 还是要提醒自己,多观察! //********************用List<string> 保存字符串列表 List<string> oList = new List<string>();//要拼接的List<string> string strNames = string.Empty; // 拼接后的字符串 //从数据源区的数据,填充List<string> IDataReader dr = dbComm.ExecuteReader(); while (dr.Read()) { if (!oList.Contains(dr[0].ToString())) { oList.Add(dr[0].ToString()); } } //拼接字符串方案一 // 通过每次判断初始字符串是否为空来保证分割符“,”的合适 foreach (string strOne in oList) { if (!string.IsNullOrEmpty(strNames)) { strNames = strNames + "," + strOne; } else { strNames = strOne; } } //拼接字符串方案二 // 通过删除末尾的“,”来保证分割符“,”的合适 foreach (string strOne in oList) { strNames = strNames + strOne + ","; } if (!string.IsNullOrEmpty(strNames)) { strNames = strNames.TrimEnd(','); //或者直接截取字符串 //strNames = strNames.Substring(0, strNames.Length - 1); } //受javascript 的Array的影响,一直想在C#的Array或List里找到Jion 函数 //没有找到后,就放弃了,用了好多年上述的两种方案, //今天偶然的机会想到了String 里有没有Jion函数,一看真有 //鄙视自己一把,必须滴,说明对系统函数关心的还不够!!! //结合 List的ToArray()函数,List的字符串的转化表现为 //List to String // 至少少了七行代码 strNames = String.Join(",", oList.ToArray()); //**************************** //字符串也可以拆到 List<string> 中 //String to List List<string> oTempList = new List<string>(strNames.Split(new char[] { ',' }));