C#和XML的电子表格简单的问题(C# and XML spreadsheet simple que

2019-09-27 04:25发布

好家伙我有1675行代码。 希望当用户点击按钮textbox.text插入此XML电子表格,然后在桌面上创建。 确实这可能吗? 我怎样才能插入当前XML电子表格行的文本?

例如:

  ` <Cell ss:StyleID="s38"/>
    <Cell ss:StyleID="s39">
    <Data ss:Type="String">ვაშლიჯვარი</Data>
    </Cell>
    <Cell ss:StyleID="s36"/>`

请帮助我,建议其东西对我来说非常重要或者给一些很好的教程。

Answer 1:

您可以打开使用LINQ to XML对Excel XML文件。 您可以根据您的要求的修改XML DOM。 你将不得不在Excel工作表与XML元素相关联的细胞。 然后,您可以保存修改XML DOM创建一个新的和修改的Excel XML文件。

这里是一个小例子来让你去:

var xDocument = XDocument.Load("EL-Zednadebi.xml");
// XML elements are in the "ss" namespace.
XNamespace ss = "urn:schemas-microsoft-com:office:spreadsheet";
var rows = xDocument.Root.Element(ss + "Worksheet")
  .Element(ss + "Table").Elements(ss + "Row");
// Row 12.
var row = rows.ElementAt(11);
var cells = row.Elements(ss + "Cell");
// Column U.
var cell = cells.ElementAt(20);
var data = cell.Element(ss + "Data");
// Replace the text in the cell.
data.Value = "Martin Liversage";
xDocument.Save("EL-Zednadebi-2.xml");

此代码假定以下简化XML:

<Workbook>
  ...
  <Worksheet>
    <Table>
       ...
       <Row> <-- Row at index 11
         ...
         <Cell> <-- Column at index 20
           <Data>ვაშლიჯვარი</Data>
         <Cell>
         ...
       </Row>
       ...
    </Table>
    ...
  </Worksheet>
  ...
</Workbook>


文章来源: C# and XML spreadsheet simple question