2017-02-28 8 views
0

を使用してコンボボックスにコンテンツを表示します。csvファイルがある場合は、zipファイルの内容を確認します。もしそうなら、私はこのコンテンツをcomboBoxにリストします。私が試したことはうまくいっていますが、チェックは行われませんでした。zipファイルの内容を確認して開いて読んで、C#WF

var = comboBox1.SelectedItem.ToString(); 
      fullpath = fbd.SelectedPath + "\\"+ var; 

      comboBox2.Items.Clear(); 
      if (File.Exists(fullpath)) 
      { 
       ZipArchive zip = ZipFile.OpenRead(fullpath); 
       foreach (ZipArchiveEntry entry in zip.Entries) 
       { 
        comboBox2.Items.Add(entry.FullName); // fill comboBox2 with *.csv files from selected zip file 
       } 
       zip.Dispose(); 
      } 
      else 
      { 
       MessageBox.Show("no csv files present"); 
      } 

答えて

0

ファイルがコンボボックスに追加される前に実際にCSVであることを確認する必要があります。

使用このチェックは:

if (entry.Name.EndsWith("csv") 
    comboBox2.Items.Add(entry.FullName); 
+0

は、私はそこに一つ以上のCVSは、zipファイルに存在するファイルであり、私にこのzipファイルに含まれるファイルの数を与えるなら、私に通知するメッセージをプログラムしたかったです。私はこれを試みたが、動作していない:MessageBox.Show(Directory.EnumerateFileSystemEntries(フルパス、 "* .csv"))().Count + "csvファイル(s)存在"); //ここでエラーが発生します –

+0

取得しているエラーは何ですか? – Ankit

+0

mscorlib.dllで 'System.IO.IOException'の種類の未処理の例外が発生しました 追加情報:ディレクトリ名が無効です。この例外タイプがスローされたときに中断します –

関連する問題