簡體   English   中英

ClosedXML:大型Excel文件刪除列

[英]ClosedXML: large Excel file delete column

我正在嘗試使用ClosedXML處理大型Excel文件。 它需要無限的時間來處理。 例如..刪除30MB文件中的10列,永不返回! 其他人是否遇到過ClosedXML的類似問題。 我的代碼在C#中。 以下是示例。

protected void deleteYears(IXLWorksheet ws)
    {
        // Remove columns
        List<IXLColumn> deletecols = (from p in ws.Rows("6").CellsUsed()
                                      where p.Value.ToString().ToUpper().StartsWith("XYZ")
                                      select p.WorksheetColumn()).ToList<IXLColumn>();
        foreach (IXLColumn x in deletecols)
        {
            x.Delete();
        }
    }

您應該實現“更好的lambdas” https://github.com/ClosedXML/ClosedXML/wiki/Better-lambdas

protected void deleteYears(IXLWorksheet ws)
{
    // Remove columns
    List<IXLColumn> deletecols = ws
        .Row(6)
        .CellsUsed(c => c.Value.ToString().ToUpper().StartsWith("XYZ"))
        .Select(c => c.WorksheetColumn()).ToList();

    foreach (IXLColumn x in deletecols)
    {
        x.Delete();
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM