C# и XML-таблица простой вопрос
Привет, ребята, у меня есть 1675 строк кода. Хотите, когда пользователь нажимает кнопку textbox.text, вставьте в эту электронную таблицу XML, а затем создайте на рабочем столе. это возможно? Как вставить текст в текущую строку таблицы xml?
Например:
` <Cell ss:StyleID="s38"/>
<Cell ss:StyleID="s39">
<Data ss:Type="String">ვაშლიჯვარი</Data>
</Cell>
<Cell ss:StyleID="s36"/>`
Пожалуйста, помогите мне, посоветуйте что-нибудь очень важное для меня или дайте хорошие уроки.
1 ответ
Решение
Вы можете открыть файл Excel XML, используя LINQ to 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>