我正在尝试将对象(Class1)作为字符串保存在单元格值中。我的问题是,从我不时有收到COMException:在Excel单元格值中保存Xml会导致ComException
HRESULT:0x8007000E(E_OUTOFMEMORY)
(它是一种随机的,但我还没有确定还没有任何具体的模式),当我写的值成细胞。任何想法都会受到欢迎
出于演示目的: 让Class1成为要转换为Xml字符串的类。 (请注意,我删除了字符串开头处的xml声明,以避免出现前导码 - 不可打印的字符)
< Class1 xmlns:xsi =“http://www.w3.org/2001/XMLSchema-instance”的xmlns:XSD = “http://www.w3.org/2001/XMLSchema”>
< ElementID> HL690375 </ElementID>
< /的Class1>”
的Class1 myClass的新= 1类();
这个类被转换为一个字符串s。s = ConvertObjectToXmlString(myClass);
然后s被分配给一个单元格
范围r = Application.ActiveCell;
r.Value2 = s; (1)如果字符串太大,我将其限制为32000个字符,并将字符串拆分为32000个字符的块,并将块保存在多个单元格中。
(2)在添加到单元格之前,我不要引用字符串。我需要吗?如果是这样怎么办?
(3)所有对象内容均为英文。
(4)C#代码示例会很好,但是VB.net代码是可以的。
在每次使用时记录字符串的内容。发生异常时,将记录的值与以前的值进行比较,看看是否有任何模式出现。 – AMissico 2010-03-18 00:03:05