如下的文本BB24         0.0000m 1.50mm                                                 3.0m   1              
G   2.0569m    12.771m    0.0000m 1     0.02mmB24     B24      3B1                 1              
I   0.1440m    12.555m    1.9128m 1     0.04mmP01     B24      3F1                 1              
I   0.1441m    12.554m    1.9128m 1     0.10mmP01     B24      3F2                 1              
G   2.0569m    12.769m    0.0000m 1     0.07mmB24     B24      3B2                 1              
G   2.7684m     8.019m    1.9128m 2     0.03mmP01     B24      3B1                 1              
I   0.3574m     9.129m    4.3238m 2     0.06mmP02     B24      3F1                 1              
I   0.3574m     9.131m    4.3238m 2     0.09mmP02     B24      3F2                 1              
G   2.7684m     8.020m    1.9128m 2     0.01mmP01     B24      3B2                 1              
G   2.0362m     5.735m    4.3238m 3     0.03mmP02     B24      3B1                 1              
I   0.3726m     6.464m    5.9873m 3     0.04mmP03     B24      3F1                 1              
I   0.3726m     6.466m    5.9873m 3     0.01mmP03     B24      3F2                 1              
G   2.0362m     5.733m    4.3238m 3     0.01mmP02     B24      3B2                 1              
G   2.3829m     2.641m    5.9873m 4     0.02mmP03     B24      3B1                 1              
I   0.3118m     3.083m    8.0584m 4     0.02mmP04     B24      3F1                 1              
I   0.3118m     3.083m    8.0584m 4     0.01mmP04     B24      3F2                 1              
G   2.3829m     2.645m    5.9873m 4     0.01mmP03     B24      3B2                 1              
G   2.2029m    10.559m    8.0584m 5     0.02mmP04     B24      3B1                 1              
I   0.4695m     8.508m    9.7918m 5     0.04mmP05     B24      3F1                 1              
I   0.4695m     8.506m    9.7918m 5     0.02mmP05     B24      3F2                 1              
G   2.2028m    10.555m    8.0584m 5     0.01mmP04     B24      3B2                 1              
G   2.8530m     6.948m    9.7918m 6     0.01mmP05     B24      3B1                 1              
I   0.3754m     7.100m   12.2693m 6     0.03mmP06     B24      3F1                 1              
I   0.3754m     7.102m   12.2693m 6     0.03mmP06     B24      3F2                 1              
G   2.8530m     6.946m    9.7918m 6     0.02mmP05     B24      3B2                 1              
G   1.7384m     4.822m   12.2693m 7     0.01mmP06     B24      3B1                 1              
I   0.3849m     6.058m   13.6229m 7     0.05mmP07     B24      3F1                 1              
I   0.3848m     6.058m   13.6229m 7     0.01mmP07     B24      3F2                 1              
G   1.7384m     4.822m   12.2693m 7     0.02mmP06     B24      3B2                 1              
G   2.2993m     2.617m   13.6229m 8     0.01mmP07     B24      3B1                 1              
I   0.2052m     2.910m   15.7170m 8     0.02mmP08     B24      3F1                 1              
I   0.2052m     2.910m   15.7170m 8     0.03mmP08     B24      3F2                 1              
G   2.2993m     2.620m   13.6229m 8     0.01mmP07     B24      3B2                 1              
G   2.0611m     2.464m   15.7170m 9     0.00mmP08     B24      3B1                 1              
I   0.9752m     2.728m   16.8029m 9     0.01mmP09     B24      3F1                 1              
I   0.9752m     2.728m   16.8029m 9     0.01mmP09     B24      3F2                 1              
G   2.0611m     2.467m   15.7170m 9     0.01mmP08     B24      3B2                 1              
G   1.9606m     3.654m   16.8029m 10    0.03mmP09     B24      3B1                 1              
I   0.3571m     3.338m   18.4064m 10    0.01mmB33     B24      3F1                 1              
I   0.3571m     3.337m   18.4064m 10    0.03mmB33     B24      3F2                 1              
G   1.9606m     3.652m   16.8029m 10    0.04mmP09     B24      3B2                 1              
G   0.2622m     3.519m   18.4064m 11    0.02mmB33     B24      3B1                 1              
I   1.8657m     3.515m   16.8029m 11    0.04mm1       B24      3F1                 1              
I   1.8658m     3.506m   16.8029m 11    0.04mm1       B24      3F2                 1              
G   0.2623m     3.510m   18.4064m 11    0.04mmB33     B24      3B2                 1              
G   0.1799m     4.073m   16.8029m 12    0.03mm1       B24      3B1                 1              
I   2.4245m     3.459m   14.5584m 12    0.02mm2       B24      3F1                 1              
I   2.4245m     3.459m   14.5584m 12    0.01mm2       B24      3F2                 1              
G   0.1800m     4.072m   16.8029m 12    0.03mm1       B24      3B2                 1              
G   0.2879m     5.354m   14.5584m 13    0.01mm2       B24      3B1                 1              
I   2.3587m     4.834m   12.4876m 13    0.05mm3       B24      3F1                 1              
I   2.3587m     4.835m   12.4876m 13    0.01mm3       B24      3F2                 1              
G   0.2880m     5.351m   14.5584m 13    0.02mm2       B24      3B2                 1              
G   0.9245m     6.176m   12.4876m 14    0.04mm3       B24      3B1                 1              
I   1.9644m     5.636m   11.4478m 14    0.03mm4       B24      3F1                 1              
I   1.9644m     5.637m   11.4478m 14    0.01mm4       B24      3F2                 1              
G   0.9246m     6.175m   12.4876m 14    0.03mm3       B24      3B2                 1              
G   0.1930m     4.043m   11.4478m 15    0.03mm4       B24      3B1                 1              
I   2.3833m     3.335m    9.2575m 15    0.01mm5       B24      3F1                 1              
I   2.3833m     3.336m    9.2575m 15    0.02mm5       B24      3F2                 1              
G   0.1930m     4.044m   11.4478m 15    0.01mm4       B24      3B2                 1              
G   0.5168m    10.100m    9.2575m 16    0.03mm5       B24      3B1                 1              
I   2.5130m    10.116m    7.2613m 16    0.03mm6       B24      3F1                 1              
I   2.5130m    10.117m    7.2613m 16    0.04mm6       B24      3F2                 1              
G   0.5168m    10.107m    9.2575m 16    0.03mm5       B24      3B2                 1              
G   0.1853m     2.526m    7.2613m 17    0.01mm6       B24      3B1                 1              
I   2.1792m     2.346m    5.2673m 17    0.00mm7       B24      3F1                 1              
I   2.1792m     2.346m    5.2673m 17    0.01mm7       B24      3F2                 1              
G   0.1852m     2.537m    7.2613m 17    0.00mm6       B24      3B2                 1              
G   0.1333m    10.898m    5.2673m 18    0.02mm7       B24      3B1                 1              
I   2.3782m    10.649m    3.0224m 18    0.04mm8       B24      3F1                 1              
I   2.3783m    10.652m    3.0224m 18    0.09mm8       B24      3F2                 1              
G   0.1333m    10.897m    5.2673m 18    0.02mm7       B24      3B2                 1              
G   0.2446m     5.216m    3.0224m 19    0.01mm8       B24      3B1                 1              
I   2.1096m     6.324m    1.1575m 19    0.01mm9       B24      3F1                 1              
I   2.1096m     6.326m    1.1575m 19    0.03mm9       B24      3F2                 1              
G   0.2447m     5.213m    3.0224m 19    0.01mm8       B24      3B2                 1              
G   0.2522m     8.977m    1.1575m 20    0.01mm9       B24      3B1                 1              
I   1.4119m    10.066m   -0.0021m 20    0.03mm10      B24      3F1                 1              
I   1.4119m    10.067m   -0.0021m 20    0.01mm10      B24      3F2                 1              
G   0.2522m     8.980m    1.1575m 20    0.01mm9       B24      3B2                 1              
W  -0.0021m    243.26m   -0.0021m   -0.0021m  B24                243.26m                          
上面这段文本,读取后要筛选掉第一行和最后一行并读入datatable,要怎么做

解决方案 »

  1.   

    下面代码测试通过,如果有其他限制条件,自己调整一下就行了。private void button1_Click(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("C1");
        dt.Columns.Add("C2");
        dt.Columns.Add("C3");
        dt.Columns.Add("C4");
        dt.Columns.Add("C5");
        dt.Columns.Add("C6");
        dt.Columns.Add("C7");
        dt.Columns.Add("C8");
        dt.Columns.Add("C9");    StreamReader sr = new StreamReader("D:\\data.txt", Encoding.Default);
        while (true)
        {
            string str = sr.ReadLine();
            if (str == null) break;
            else
            {
                string[] strs = str.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
                if (strs[0] == "I" || strs[0] == "G")
                {
                    dt.Rows.Add(strs);
                }
            }
        }
        sr.Close();
        dataGridView1.DataSource = dt;
    }
      

  2.   

    先行谢谢,我去试一下还有个问题请教下0.02mmB24文本中的这一段其实是两列(0.02mm B24),但是仪器在记录时没有用空格区分,现在要读成两列要怎么做啊仪器在记录这段文本的时候是按一定的位数记录的,0~2记录一列,3-N是记录一列,这样子的,有没有办法按位数写入datatable的
      

  3.   


    str.Split 换成  str.Substring(开始位置,宽度) 就行了. 数据必须规范.
      

  4.   

    private void button1_Click(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("C1");
        dt.Columns.Add("C2");
        dt.Columns.Add("C3");
        dt.Columns.Add("C4");
        dt.Columns.Add("C5");
        dt.Columns.Add("C6");
        dt.Columns.Add("C7");
        dt.Columns.Add("C8");
        dt.Columns.Add("C9");
        dt.Columns.Add("C10");    StreamReader sr = new StreamReader("D:\\data.txt", Encoding.Default);
        while (true)
        {
            string str = sr.ReadLine();
            if (str == null) break;
            else
            {
                if (str[0] == 'I' || str[0] == 'G')
                {
                    string[] strs = new string[10];
                    strs[0] = str.Substring(0, 1);
                    strs[1] = str.Substring(1, 9);
                    // 补充下面位置
                    strs[2] = str.Substring(0, 1);
                    strs[3] = str.Substring(0, 1);
                    strs[4] = str.Substring(0, 1);
                    strs[5] = str.Substring(0, 1);
                    strs[6] = str.Substring(0, 1);
                    strs[7] = str.Substring(0, 1);
                    strs[8] = str.Substring(0, 1);
                    strs[9] = str.Substring(0, 1);
                    dt.Rows.Add(strs);
                }
            }
        }
        sr.Close();
        dataGridView1.DataSource = dt;
    }