0

我发现当通过数组将长字符串分配到单元格时,它会随机删除字符串。

例如,我有一个二维数组(1 行,大约 20 个值),包括项目编号和正文 HTML(来自 WatiN 自动化的正文 Html)。

当我将该数组分配到一行(当然大小相同)时,它偶尔不会将 HTML 插入其单元格,但该单元格两侧的值看起来都很好。

假设字符串太长,我尝试从 HTML 中删除不需要的空格并且它起作用了......但不是因为长度!

事实证明,如果我简单地修剪字符串它会起作用(即使没有尾随空格!)。

字符串本身可能是什么导致 Excel 拒绝它,为什么简单的字符串操作(如 Trim)可以解决问题?

EXCEL.Range range = worksheet.GetRange(1,1,10,10);
object[,] cells = range.GetCells();
cells[1,1] = "123456789";
cells[1,2] = waitnbrowser.Body; // Get 10K body text HTML string
cells[1,3] = "something else";
range.Value = cells; // Sometimes the body text is left out, even though it shows in the cells array fine.

如果我向长字符串添加修剪,即使长度没有改变:

cells[1,2] = waitnbrowser.Body.Trim(); // this (or other string manipulation) fixes the problem!
range.Value = cells; // now works every time! 
4

0 回答 0