字符串数组到字符串转换所需的Linq语法

Sma*_*aug 1 c# linq c#-4.0

我在特定文件夹的数组中列出了所选文件.

String[] allfiles = System.IO.Directory.GetFiles(Target, "*.*", System.IO.SearchOption.AllDirectories);
Run Code Online (Sandbox Code Playgroud)

我需要将所有这些文件转换为字符串变量,并在LINQ的帮助下每行附加"\n"字符.我可以像下面的循环一样做,但我在LINQ语法中需要.

String strFileName = string.Empty;

for ( int i = 0; i < allfiles.Length ; i++)
  strFileName = strFileName + "\n" + allfiles[1] ;
Run Code Online (Sandbox Code Playgroud)

Tim*_*ter 7

首先,我会使用Directory.EnumerateFiles,所以你不需要等到所有文件都被读取.然后你可以使用string.Join(Environment.NewLine, allFileNames):

IEnumerable<string> allFileNames = Directory.EnumerateFiles(Target, "*.*", System.IO.SearchOption.AllDirectories);
string strFileNames  = string.Join(Environment.NewLine, allFileNames);
Run Code Online (Sandbox Code Playgroud)


Jam*_*iec 5

很容易

String.Join("\n",allFiles)
Run Code Online (Sandbox Code Playgroud)