【发布时间】:2011-01-27 22:58:03
【问题描述】:
我正在尝试将对象 (Class1) 保存为单元格值中的字符串。我的问题是我有时会遇到 ComException:
HRESULT: 0x8007000E (E_OUTOFMEMORY)
(这是一种随机但我还没有确定任何特定模式)当我将值写入单元格时。欢迎任何想法
出于说明目的:
令 Class1 为要转换为 Xml 字符串的类。 (请注意,我删除了字符串开头的 xml 声明以避免出现前导码 - 不可打印字符)
Class1 myClass = new Class1();
此类被转换为字符串 s。 s= ConvertObjectToXmlString(myClass);
然后将 s 分配给一个单元格
范围 r = Application.ActiveCell;
r.Value2 = s;
注意:
(1) 如果字符串太大,我将其限制为 32000 个字符并将字符串拆分为 32000 个字符的块并将这些块保存在多个单元格中。
(2) 在添加到单元格之前,我不引用字符串。我需要吗?如果可以的话怎么做?
(3) 所有对象内容均为英文。
(4) C# 代码示例会很棒,但 VB.net 代码可以。
【问题讨论】:
-
在每次使用时记录字符串的内容。发生异常时,将记录的值与以前的值进行比较,看看是否出现任何模式。
标签: c# vb.net excel automation