从Excel导入数据,可以看起来更好吗?

时间:2015-08-18 13:20:06

标签: c# excel epplus

你能看看这部分功能并告诉我,如果可能会更好吗?

我的Excel文件如下所示:

  

IMIE | NAZWISKO | ULICA | NRDOMU ......

     

JANE |福克斯| XXY | 23 ...

     

ANTHONY |威尔士| QWER | 555 ...

我需要将此.xlsx文件中的人员分配给List。

以前的枚举类型:

    enum Headers
    {
        IMIE = 0, // column nbumber, first 0 not 1
        NAZWISKO,
        ULICA,
        NRDOMU,
        NRLOKALU,
        KODPOCZTOWY,
        MIASTO,
    }
string[] array = new string[endPosition.Column];              
for (int row = startPosition.Row + 1; row <= endPosition.Row; ++row)
                    {

                        for (int column = startPosition.Column; column <= endPosition.Column; ++column)
                        {
                            array[column - 1] = currentWorksheet.Cells[row, column].Text;

                        }
                        personList.Add(new Person(array[(byte)Headers.IMIE],
                                                    array[(byte)Headers.NAZWISKO],
                                                    new Addres(array[(byte)Headers.ULICA],
                                                                array[(byte)Headers.NRDOMU],
                                                                array[(byte)Headers.NRLOKALU],
                                                                array[(byte)Headers.KODPOCZTOWY],
                                                                array[(byte)Headers.MIASTO]
                                                                )));
                        Array.Clear(array, 0, endPosition.Column); //reduplication exclude for example number of local
                    }

我正在使用epplus库。

1 个答案:

答案 0 :(得分:0)

以防万代:) 我这样查看这段代码,它更灵活:

for (var row = startPosition.Row + 1; row <= endPosition.Row; ++row)
                {
                    _personList.Add(new Person(currentWorksheet.Cells[row, (int) Headers.IMIE].Text,
                                                currentWorksheet.Cells[row, (int) Headers.NAZWISKO].Text,
                                                new Address(currentWorksheet.Cells[row, (int) Headers.ULICA].Text,
                                                            currentWorksheet.Cells[row, (int) Headers.NR_DOMU].Text,
                                                            currentWorksheet.Cells[row, (int) Headers.NR_LOKALU].Text,
                                                            currentWorksheet.Cells[row, (int) Headers.KOD_POCZTOWY].Text,
                                                            currentWorksheet.Cells[row, (int) Headers.MIASTO].Text
                                                            )));