我尝试使用Filehelpers(3.0.39.0)对12.000行中的文件进行分区。 下面是我的代码:
'Busca informações do Discador
Dim dtDiscadores As New DataTable
mensagemErro += ItauACCRepositorio.GetDiscadores(dtDiscadores, dtInicial, dtFinal)
'DataTable->List
Dim records = (From row In dtDiscadores.Rows
Select New ItauACCLayout.RetornoAcionamentoDiscador With {.DescricaoLinha = row("DCRLINHARQ")}).ToList()
'Inicializa o motor do FileHelpers
Dim engine As New FileHelperEngine(Of ItauACCLayout.RetornoAcionamentoDiscador)(Encoding.GetEncoding("iso-8859-1"))
'Escreve o arquivo
engine.WriteFile(String.Concat(_camArquivo, _nomArquivo, _extArquivo), records)
如果我的数据表(dtDiscadores)返回超过12.000行,我需要分区为' N'文件差异!
答案 0 :(得分:0)
您可以使用batch extension from MoreLinq批准records
。
var batches = records.Batch(12000);
var i = 0;
foreach(var batch in batches)
{
i++;
engine.WriteFile(String.Concat(_camArquivo, _nomArquivo + i.ToString(), _extArquivo), batch);
}