簡體   English   中英

StringBuilder中的system.outofmemoryexception

[英]system.outofmemoryexception in StringBuilder

我有以下代碼:

for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
    for (int j = 0; j < ds.Tables[0].Columns.Count; j++)
    {
        strCsv.Append( XC.CleanForCsv(ds.Tables[0].Rows[i][j].ToString()) + ",");
    }

    strCsv.Append( "\r\n" + strCsv)
}

Dataset包含8000條記錄。 僅在15條記錄之后使用for循環遍歷記錄strCsv.Append( "\\r\\n" + strCsv)語句將引發異常,提示System.OutOfMemoryException 發生此異常的原因是什么?

看這個:

strCsv.Append( "\r\n" + strCsv)

您將在每次迭代中將輸出加倍。 這將建立非常快-以及給你錯誤的結果。

我想您只想要:

strCsv.Append("\r\n");

暫無
暫無

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

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