5

我用 xslt 生成我的电子表格,并想要一个带有换行文本的单元格(或者更好:一个带有换行符的文本)。

所以我的 xslt 为 sheetdata 生成以下 XML:

<sheetData>
  <row r="1">
    <c r="A1" t="inlineStr">
      <is>
        <t>
          a simple string
          line break jeeeehaaa
        </t>
      </is>
    </c>
  </row>
</sheetData>

完成工作簿构建后,我在 Excel 中打开它;并且没有换行符,只是 A1 中的一个简单的单行字符串。

有没有人解决这个问题?不必在 xml 或 xslt 中(但会很好)。我也可以在 C# 中做一些事情

4

1 回答 1

6

在 excel 中,所有与样式相关的信息都存储在 style.xml 文件中。因此,包装信息应该存储在 style.xml 中,并且样式 ID 应该被称为<c r="A1" t="inlineStr">另一个属性“s”(表示样式)。让我展示一下我的意思是什么..

我确实有一个带有一些文本的excel,并且单元格确实被包裹了。

如果我看到它的 sheet.xml 数据,它将在标签中有s="1"属性值项。<c>

因此,如果我打开 style.xml 并查看单元格样式信息,我将获得<cellXfs>标签和一个<xf>子标签,在其中我会获得一个<alignment>带有 wrapText 属性的标签,其值为“1”(确实是“真”)。

由于我是 SO 新手,因此无法发布图片。希望这可以帮助 :)

于 2012-04-15T04:30:34.243 回答