|
|
1
30
如果它实际上是有效的XML,并且很容易放在内存中,我会选择
LINQ to XML
(
您可以在适当的地方使用xpath,或者使用内置的axis方法(
另一方面,如果这是HTML, 不是 有效的XML,您将有更困难的时间-因为XML API Generalyl希望使用有效的XML文档。你可以使用 HTMLTidy 当然,首先,但是 可以 有不良影响。 对于您的具体示例:
|
|
|
2
4
您正在处理的文档是否相对较小?如果是这样,您可以使用一个xmldocument对象将它们加载到内存中,对其进行修改,然后将更改写回内存。
根据输入XML的结构,这可能会使解析代码更简单一些。 |
|
|
3
2
这是我编写的一个工具,用于修改IAR ewarm项目(EWP)文件,并向项目添加一个链接器定义。在命令行中,使用2个参数运行它,输入和输出文件名(*.ewp)。
XML的结构如下所示
|
|
|
4
1
如果您有适合计算机内存的较小文档,可以使用
使用
|
|
|
5
1
对于手头的任务(阅读现有的文档,以正式的方式编写和修改),我同意 XPathDocument 穿过一个 XslCompiledTransform . 如果您不能正式化,没有预先存在的文档,或者通常需要更多的自适应逻辑,我将使用如skeet所说的LINQ和xdocument。 基本上,如果任务是转换,那么是XSLT;如果任务是操作,那么是LINQ。 |
|
|
6
1
我最喜欢的工具是 HtmlAgilityPack . 我使用它将复杂的HTML文档解析为LINQ可查询集合。它是查询和解析HTML(通常不是有效的XML)的一个非常有用的工具。 对于您的问题,代码如下:
|
|
|
7
0
一个相当简单的方法是创建一个新的
|
|
|
8
-1
从阅读 Xml namespace on the MSDN . 如果你有更具体的问题,把它们贴在这里… |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |