显示数据表取决于文件内容

问题描述

我想显示 DataTable 取决于 file 中特定列上的行值。关键是我有两个不同的文件,具有不同的值。 例如:

1 个文件结构:

Id;Name;Surname;Sex;Age;
1;AAA;EEE;Male;20;
2;BBB;FFF;Male;20;
3;CCC;GGG;Male;40;
4;DDD;HHH;Male;40;

2 文件结构:

Id;Name;Surname;Sex;Age;
1;AAA;EEE;Female;20;
2;BBB;FFF;Female;20;
3;CCC;GGG;Female;40;
4;DDD;HHH;Female;40;

如果我要打开包含在列 SexMale 中的文件,那么它应该只显示值为 20 的行。 40 被跳过。

如果我要打开包含在列 SexFemale 中的第二个文件,那么它应该只显示值为 40 的行。 20 被跳过。

所以,主要应该是这样的: 如果我打开 1 个文件,它应该显示

Id;Name;Surname;Sex;Age;
1;AAA;EEE;Male;20;
2;BBB;FFF;Male;20;

如果我打开 2 个文件,它应该显示

Id;Name;Surname;Sex;Age;
3;CCC;GGG;Female;40;
4;DDD;HHH;Female;40;

到目前为止我的代码

table = new DataTable();
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.Filter = "Text file|*.txt";
openFileDialog1.Title = "Import file";
openFileDialog1.ShowDialog();
if (openFileDialog1.FileName != "")
    {
     reader = new System.IO.StreamReader(openFileDialog1.FileName);
     NameFile = reader.ReadToEnd();
     }
     var lines = System.IO.File.ReadAllLines(openFileDialog1.FileName);
if (lines.Count() > 0)
     {
     .
     .
     .//some code here not important 
     .
     .
     .
      }
      dataGridView1.DataSource = table;
      }
      DataView dv = table.defaultview;
      dv.RowFilter = "[Sex] LIKE 'Male' OR [Sex] LIKE  'Female'";
      dataGridView1.DataSource = dv;
      dataGridView1.AutoResizeColumns();

但它只显示男性或女性性别,它也应该以某种方式通过 2040 过滤年龄。你有什么想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)