Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在没有任何第三方库的情况下使用c#修改HTML元素?_C#_Xml - Fatal编程技术网

如何在没有任何第三方库的情况下使用c#修改HTML元素?

如何在没有任何第三方库的情况下使用c#修改HTML元素?,c#,xml,C#,Xml,作为我需要执行的项目的一部分,我读取了一个带有c#的xml文件,并需要将节点值放在一个具有节点密钥id的范围内。 我不能使用任何第三方库(Agility Pack)。 我曾想过将jQuery注入文件,但我需要在c#console应用程序中以本机方式进行 我假设您使用文件流或其他东西来读取文件。查找可以读取行的内容,添加您自己识别xml块的代码,查找如何在字符串中插入文本,插入节点并将文本写回文件 如果它是一个在线的网站:如果你使用c#,那么你就有一个ASP.Net网站,这样你就可以查找ASP.N

作为我需要执行的项目的一部分,我读取了一个带有c#的xml文件,并需要将节点值放在一个具有节点密钥id的范围内。 我不能使用任何第三方库(Agility Pack)。
我曾想过将jQuery注入文件,但我需要在c#console应用程序中以本机方式进行

我假设您使用文件流或其他东西来读取文件。查找可以读取行的内容,添加您自己识别xml块的代码,查找如何在字符串中插入文本,插入节点并将文本写回文件

如果它是一个在线的网站:如果你使用c#,那么你就有一个ASP.Net网站,这样你就可以查找ASP.Net动态添加控件之类的东西,他们会给你答案

编辑

您有一些可以读取xml文件的东西。没有自由。。。? 编写检测html元素是否存在的代码

创建一个包含元素所有基本变量的类:

类型:a、p、h1、h2等

Id:将等于html文件中的Id

值:括号内的值

ParentElement Id:将元素链接到围绕 元素

ChildElement Id列表:检查元素是否有子元素,以及是否有子元素

如何实现这一点是基本的C#


然后逐行读取文件。如果括号打开时包含未闭合的元素,则将id作为childid添加到父元素子id列表中,并在子元素中设置parentelement id。基本上,为所有内容都提供一个索引,这样您就可以在一个巨大的元素列表中搜索正确的元素并添加值或添加新元素

为什么你不能使用敏捷包?这听起来是最明显、最正确的解决办法。这听起来像是很棒的家庭作业,但关于家庭作业,你需要自己去弄清楚,否则他们会称之为奇怪的工作而不是家庭作业。你可以使用airtasker并付钱给别人帮你做,但再一次,你什么也学不到。查找RegEx和/或类似地使用indexOf和replace如何?由于信息安全问题,我无法使用它(一切都被阻止了,我只有安装在工作站中的工具)。我知道如何用两种方法来解决这个问题,但我被指示用另一种方法来解决这个问题。问题是如何在c#中以本机方式读取html元素,并注入我已经从xml中提取的值。html文件是在一个实时网站中,还是只是一个本地的html文件,没有任何作用?第三方库将搜索对象并将值放在标记之间,因此您必须这样做。唯一的本机文件读写方法是使用System.IO,然后使用streamreader和writer。但这取决于html文件的位置。如果它在服务器上,那就不可能了,因为你需要某种ftp客户端,我想这对你来说有点超出了范围。html的构建方式与xml文件相同(在带ID的块中),所以如果你能从xml文件中提取一些东西,为什么不能写入html文件?