如何格式化List中的每个字符串?

时间:2012-10-25 05:07:32

标签: c#

我有这个功能,我需要它来将列表中的字符串格式化为http://开头:

        private List<string> offline(string targetDirectory)
        {

            List<string> directories = new List<string>();

            try
            {
                string[] dirs = Directory.GetDirectories(targetDirectory, "*.*", SearchOption.TopDirectoryOnly);
                for (int i = 0; i < dirs.Length; i++)
                {

                    directories.Add(dirs[i]);
                }
            }
            catch
            {

            }        
            return directories;    
        }

该函数返回硬盘中的目录字符串列表。     与c:\c:\windows

一样

我希望最后的列表不是c:\\c:\\windowsindex[0] index[1]http://c:\格式化为:http://c:\windows和{ {1}}和http://c:\temp因此List的每个字符串都将以http://开头。

我该怎么做?

2 个答案:

答案 0 :(得分:3)

  

所以List的每个字符串都将以http://开头。

List<string> newList =  directories.Select(r=> "http://" + r).ToList();

或者

var list2 = directories.Select(r => string.Concat("http://", r)).ToList();

答案 1 :(得分:0)

为什么不在添加到列表

时追加
directories.Add("http://" + dirs[i]);

return directories.Select(rs=> "http://" + rs).ToList()

directories.ForEach(rs=>rs= "http://" + rs);
return directories;