Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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# 我想使用外部xml文件和C导入/更改Google Chrome中的现有书签,但有些东西无法正常工作_C#_Google Chrome_Bookmarks - Fatal编程技术网

C# 我想使用外部xml文件和C导入/更改Google Chrome中的现有书签,但有些东西无法正常工作

C# 我想使用外部xml文件和C导入/更改Google Chrome中的现有书签,但有些东西无法正常工作,c#,google-chrome,bookmarks,C#,Google Chrome,Bookmarks,如标题所述。我正在制作一个C脚本,将书签从一个外部文件导入到Google Chrome,我可以随时编辑该文件。导入新条目并检测现有条目工作得很好,但我无法让它检测某个书签的链接是否已更改 例如:名为x的现有书签具有URL:http://test.com 并且我的XML文件具有名称为x的相同条目,但具有另一个URL:https://test.com. 所以我的问题是如何检测链接是否根据其名称进行了更改。我已经尝试过比较Google书签文件中的字符串和我的XML,但是有些东西肯定不起作用 我真的很依

如标题所述。我正在制作一个C脚本,将书签从一个外部文件导入到Google Chrome,我可以随时编辑该文件。导入新条目并检测现有条目工作得很好,但我无法让它检测某个书签的链接是否已更改

例如:名为x的现有书签具有URL:http://test.com 并且我的XML文件具有名称为x的相同条目,但具有另一个URL:https://test.com. 所以我的问题是如何检测链接是否根据其名称进行了更改。我已经尝试过比较Google书签文件中的字符串和我的XML,但是有些东西肯定不起作用

我真的很依赖你的帮助,因为我需要这个来完成我的工作。我知道这是非常硬编码,所以如果你能告诉我一个更合适的解决方案,那将是非常感谢

以下是我的代码片段:

私有无效Chromebook标记按钮测试单击对象发送器,路由EventTarget e { //这里我们读取一个XML文件 var doc=XDocument。Load@testpath\BookmarksTestConfig.xml; XDocument xdc=XDocument.Parsedoc.ToString; //这里我们得到了名为link的属性的所有值 var arrNames=xdc.Root.genderantsfavorite.Selectx=>x.Attributelink.Value; //这里我们阅读Bookmarks json文件 字符串输入=System.IO.File。ReadAllText@testtestpath\书签; 使用StringReader=new StringReaderinput 使用JsonReader JsonReader=new JsonTextReaderreader { JsonSerializer serializer=新的JsonSerializer; var o=JTokenserializer.DeserializejsonReader; //这里我们从上面的json文件中获得所有现有书签 var allExistingLinks=o[root][bookmark_bar][children]; int i=1; int j=1; //在这个double-foreach语句中,我比较了所有的值 doc.ElementsBookmarks.Elements中的foreach变量元素 { Console.WriteLinei+到外部循环的条目,来自xml:+element.Attributelink.Value.ToString的链接; allExistingLinks中的foreach变量url { Console.WriteLinej+进入内部循环; j++; 如果arrNames.Containsurl[url].ToString&&url[url].ToString==element.Attributelink.Value.ToString { Console.writeLink from xml+element.Attributelink.Value+已存在; 打破 } 如果arrNames.Containsurl[url].ToString&&url[url].ToString!=element.Attributelink.Value.ToString { 要添加的Console.writelinew链接:+element.Attributelink.Value; } else if element.Attributename.Value.ToString.Containsurl[name].ToString { Console.WriteLink+url[url].ToString+需要更新为+element.Attributelink.Value.ToString; 回来 } 其他的 { Console.WriteLineSkip用户定义链接:+url[url]; } } i++; } } } 以下是我的XML: