internal static List <Bookmark> LoadAllBookmarks() { var allbookmarks = new List <Bookmark>(); var chromeBookmarks = new ChromeBookmarks(); var mozBookmarks = new FirefoxBookmarks(); //TODO: Let the user select which browser's bookmarks are displayed // Add Firefox bookmarks mozBookmarks.GetBookmarks().ForEach(x => allbookmarks.Add(x)); // Add Chrome bookmarks chromeBookmarks.GetBookmarks().ForEach(x => allbookmarks.Add(x)); return(allbookmarks.Distinct().ToList()); }
private void Test_OnClick(object sender, RoutedEventArgs e) { if (!string.IsNullOrEmpty(_configModel?.FilePath)) { ChromeBookmarks chromeBookmarks = (ChromeBookmarks)StringConvert.JsonToList<ChromeBookmarks>( StringConvert.FileRead(_configModel.FilePath)); BookmarksData bookmarksData = new BookmarksData(); _myBookmarkses = bookmarksData.GetBookmarkses(chromeBookmarks); ConteView.ItemsSource = _myBookmarkses; } else { MessageBox.Show("请先设置书签文件地址"); } }
/// <summary> /// 将Chrome书签对象数据转为MyBookmarks数据 /// </summary> /// <param name="chromeBookmarks"></param> /// <returns></returns> public List <MyBookmarks> GetBookmarkses(ChromeBookmarks chromeBookmarks) { List <MyBookmarks> list = new List <MyBookmarks>(); if (chromeBookmarks != null) { //添加分组书签 foreach (var datameta in chromeBookmarks.roots.bookmark_bar.children) { if (datameta.children == null) { continue; } foreach (var datametaChild in datameta.children) { if (datametaChild.type == "url") { list.Add(new MyBookmarks() { Name = datametaChild.name, Url = datametaChild.url, Type = datameta.name, Source = EnumClass.SourceEnum.Chrome.ToString(), }); } } } //添加其他书签 foreach (var datameta in chromeBookmarks.roots.other.children) { list.Add(new MyBookmarks() { Name = datameta.name, Url = datameta.url, Type = chromeBookmarks.roots.other.name, Source = EnumClass.SourceEnum.Chrome.ToString(), }); } } return(list); }
private void btn_Read_Click(object sender, EventArgs e) { string filePath = file_textpath.Text; if (string.IsNullOrEmpty(filePath)) { MessageBox.Show("请选择书签文件"); } else { if (File.Exists(filePath)) { string str = StringConvert.FileRead(filePath); ChromeBookmarks chromeBookmarks = (ChromeBookmarks)StringConvert.JsonToList <ChromeBookmarks>(str); BookmarksData bookmarksData = new BookmarksData(); _myBookmarkses = bookmarksData.GetBookmarkses(chromeBookmarks); dataG_Man.DataSource = _myBookmarkses; } else { MessageBox.Show("当前文件不存在"); } } }