繁体   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