首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Excel 2010中的共享字符串

Excel 2010中的共享字符串
EN

Stack Overflow用户
提问于 2013-06-27 07:24:50
回答 1查看 9.9K关注 0票数 14

有人能帮我理解me中的共享字符串吗?我试着用一些博客来理解,但没有得到完整的想法。每个人都在解释如何使用Open访问共享字符串,共享字符串存储在哪里(作为sharedStrings.xml)。使用API访问是可以的。但,

  1. 如何在Excel中创建共享字符串。(在Excel 2010中手动创建,而不是使用API)
  2. 共享字符串的确切需求是什么?
  3. 在哪种情况下我可以使用共享字符串?

我试过跟随。

http://www.sadev.co.za/content/reading-and-writing-excel-2007-or-excel-2010-c-part-iii-shared-strings

http://msdn.microsoft.com/en-us/library/gg278314.aspx

EN

Stack Overflow用户

回答已采纳

发布于 2013-07-02 09:48:45

共享字符串基本上是一种节省空间的机制。至于你的问题:

A1.不能使用Excel用户界面手动创建共享字符串。这是因为Excel默认情况下总是将任何文本存储为共享字符串。

A2.如前所述,这是一个节省空间的机制。Excel 2007/2010/2013使用Open格式,它基本上是一堆压缩在一起的XML文件。这也可能是为了便于参考。您只需引用索引,就像引用字符串数组的索引一样。(但XML本身就是冗长的,因此我怀疑它是为了节省空间)。

假设您在表格“A1”的单元格"FirstSheet“中有文本”这是一个非常长的字符串“。假设您在表格“B7”的单元格"SecondSheet“中也有相同的文本。Excel将“这是一个非常长的文本”作为一个条目存储在共享字符串表中,比如索引5。在"FirstSheet“单元格A1中,Open类单元格将只包含"5”作为CellValue。在"SecondSheet“单元格B7中,SDK类单元格也将包含"5”。

基本上,CellValue只保存共享字符串表的索引。你就是这样节省空间的。假设文本在工作表中以及在不同工作表之间重复。

A3.如果您了解如何使其工作,请选择共享字符串。如果没有,只需为CellValue设置单元格类中的实际文本(Cell.DataType为CellValues.String而不是CellValues.SharedString)。

票数 21
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17337073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档