2016-12-20 9 views
1
string[] fileNames = Directory.GetDirectories(folderLocation); 
     foreach (string fileName in fileNames) 
     { 

      item = new ListItem(); 
      item.Value = item.Text = "Add " + fileName.Substring(startSize); 
      CheckBoxList1.Items.Add(item); 
      CheckBoxList2.Items.Add(item); 
      CheckBoxList3.Items.Add(item); 

これはディレクトリを戻していますが、フォルダ名にはCobolという用語が含まれているディレクトリがあります。他のフォルダを返して、その単語がフォルダ名に含まれているものを除外できますか?GetDirectories。名前に単語が含まれていないディレクトリを取得する

答えて

2

希望します。

Directory.GetDirectories(folderLocation).Where(x=>!x.Contains("Cobol")).ToArray(); 
+0

ありがとう、ここでエラーが発生しました。私は上記のフォルダに名前を付けたのでこれはありますか?今すぐこの新しい。 エラー 'System.Collections.Generic.IEnumerable 'を暗黙的に 'string'に変換することはできません。明示的な変換が存在します(キャストがありませんか?) 上記のコード: ListItem item; string folderLocation = @ "\\ serv5007i \ TeamCityDeploy \ Trunkプロダクションビルド\ Current \ bin \ Runtime"; int startSize = folderLocation.Length + 1; – conye9980

+0

@ conye9980 'ToArray()'がありません。 – InBetween

+0

@InBetween thx、編集 – tym32167

0

tym32167 &

string[] fileNames = Directory.GetDirectories(folderLocation).Where(x=>!x.Contains("Cobol")).ToArray(); 
    foreach (string fileName in fileNames) 
    { 

     item = new ListItem(); 
     item.Value = item.Text = "Add " + fileName.Substring(startSize); 
     CheckBoxList1.Items.Add(item); 
     CheckBoxList2.Items.Add(item); 
     CheckBoxList3.Items.Add(item); 

その間のおかげで答え質問!

+0

'ToArray'は必要ありません。その代わりに 'foreach'を' IEnumerable 'に置き換えてください。 – juharr

+0

申し訳ありませんが、私は別の言葉を排除したい場合は?これは正しいでしょうか? – conye9980

+0

そして、この 'x => new [] {" Cobol "、" Cobol "、" Cobol " "HTML"}。すべて(y =>!x.Contains(y)) ' – juharr

関連する問題