2014-10-20 2 views
0

두 개의 파일 확장명을 목록 상자에 표시 할 수 있지만 코드에 하나의 값 (예 : string extension = "* .png";)을두면 분명히 코드가 작동합니다.하나의 문자열 변수에 대해 두 값을 표시하는 방법 C# Winform?

 string path = cmbDrive.Text; 
     string extension = "*.txt" + "*.png"; 
     foreach (string s in FileUts.GetFiles(path, extension)) 
     { 
      lbDBview.Items.Add(s); 
     } 
     if (lbDBview.Items.Count == 0) 
     { 
      MessageBox.Show("No Files found!"); 
     } 
+0

다음은 비슷한 질문입니다. http://stackoverflow.com/questions/163162/can-you-call-directory-getfiles-with-multiple-filters – TGH

답변

3

무엇이 FileUts.GetFiles()이 정확히 무엇을하는지 분명치 않습니다. 이 Directory.GetFiles()를 호출하는 경우

OpenFileDialog를 호출하는 경우

extension = "TXT|*.txt;PNG|*.png" 

을하려고하면 의 searchPattern에 여러 조건을 지정할 수 없습니다. 그러나 두 개의 결과를 결합 할 수 있습니다 (예 : 당신은 아무것도 다른 흥미로운 가정, Directory.GetFiles() and use Linq 단일 통화를 할 수도

foreach (string s in FileUts.GetFiles(path, extension1) 
        .Union(FileUts.GetFiles(path, extension2))) 
{ 
    // Do stuff 
} 

참고 코멘트는 FileUts.GetFiles()에 발생합니다.

+0

Eric J. Mr. 코드가 정말 도움이되었습니다. . :) – NewbieInCoding

관련 문제