日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

win8/Metro开发系七 win8 对常见数据源的解析及处理 如:xml,json,以及html代码

發布時間:2024/4/15 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 win8/Metro开发系七 win8 对常见数据源的解析及处理 如:xml,json,以及html代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先還是那句話,我不是大牛,這些只是簡單的記錄一下學習的過程,沒有太多面向對象和設計模式的思維,只偏基礎,不喜莫笑;個人觀點如果有不足之處,還望多多指教!

導語:程序開發中往往涉及到各種數據源,所以就有那么一個問題對各種數據源怎么進行處理,并讓他在自己的程序中自由遨游,一般移動應用很大的數據都放在網上,通過數據接口來調用所以就會有各種各樣的格式,如常見的數據源html源碼,xml數據,json,對于這些數據處理方法有很多種,你可以選擇你喜歡的,接下來就分享一下我覺得簡單的易用的!

html:這東西是做一個合格的小偷必須要會的,誰用誰知道

方法一:正則表達式處理字符串

優點:通用,強大

缺點:適用范圍比較窄,簡單的還行,復雜的只適合正則大牛和閑的沒事干得把

配合工具:RegexTester

方法二:微軟的Ie組件

SeacherTool.dll微軟ie的解析內核這個原來用過幾次總體來說還算強大在添加引用com組件里面有的

好長時用的了記不清了大家自己可以用下

缺點:net平臺支持不算全面

優點:湊合勉強可以用用

方法三:java平臺下?HTMLParser

介紹這個的資料挺多,大家做java的可以用很強大

方法四:HtmlAgilityPack.1.4.6html解析

推薦這個強大易用只是net 2.0-4.5 sl所有版本,sl for wp也支持更重要的事在winrt4.5下也有

winrt下沒有xpath尋找了吧好像只支持按照id尋找

不過有這個就夠了可以省你很多工夫

代碼示例:

View Code HtmlAgilityPack.HtmlDocument htmlHelper = new HtmlAgilityPack.HtmlDocument();htmlHelper.LoadHtml(@htmlDoc);int i = 0;IEnumerable<HtmlAgilityPack.HtmlNode> m = htmlHelper.GetElementbyId("main").Elements("div");

html的解析就介紹到這可能還有很多方法:大家探索可以一起交流下

2.json格式解析

son作為互聯網上輕量便捷的數據傳輸格式,越來越受到重視。但在服務器端編程過程中,我們常常希望能通過智能提示來提高編碼效率。JSON

格式網上數據很瘋狂,所以想從網上撈數據,那就好好分析下json吧

方法一:大家搜一搜把好像有兩個c#里面提供了好幾個序列化的類,來解析他們,我搜了半天用了不大好使 ,沒達到我想要的效果

大家如果有興趣就搜一下

方法二:我覺得這種方面快捷 適合快速開發:json.net

版本齊全好用:

代碼很簡單就不貼了 看看就會再附贈給大家倆個開源小工具把jsoN對象轉化成c#model

http://jsonclassgenerator.codeplex.com/

還有一個沒地址了給你json視圖查看器讓你方面查看json格式數據網站有在線的百度應用可以用

這東西也簡單開了就會,

有了這些東西也許json數據可以讓你操作自如了吧

?

接下來就是xml

xml不多說了大家都懂

xml我沒有找什么東西個人感覺net的linq to xml就挺偉大!

接下來看代碼,由于第一次調的時候別的地方出問題以為是linq查詢除了問題所以就索性把linq語句給換成if for了

一樣的思路linq內部也是這么實現的所以下面給出winRT下xml的讀取

簡單示例代碼:

public static async Task<XDocument> LoadXml(string sourceName){StorageFolder storageFolder = await Package.Current.InstalledLocation.GetFolderAsync("DataSources");StorageFile storageFile = await storageFolder.GetFileAsync(sourceName+".xml");XmlLoadSettings loadSettings = new XmlLoadSettings();loadSettings.ProhibitDtd = false;loadSettings.ResolveExternals = false;XmlDocument xmlDoc = await XmlDocument.LoadFromFileAsync(storageFile, loadSettings);XDocument doc = XDocument.Parse(xmlDoc.GetXml());var ReturnTask = Task.Factory.StartNew(() => doc);return await ReturnTask;}/// <summary>取得朝代/// /// </summary>/// <param name="ReturnTasks"></param>public static List<t_dynastyModel> GetT_dynasty(XDocument ReturnTasks){List<t_dynastyModel> t_dynasty = new List<t_dynastyModel>();foreach (var item in ReturnTasks.Descendants("t_dynasty")){t_dynastyModel temp = new t_dynastyModel();temp.d_dynasty = item.Element("d_dynasty").Value;temp.d_intro = item.Element("d_intro").Value;temp.d_intro2 = item.Element("d_intro2").Value;temp.d_num = item.Element("d_num").Value;t_dynasty.Add(temp);}return t_dynasty;}

?

?

?

轉載于:https://www.cnblogs.com/cxing/archive/2012/11/04/xingwin8ReadData.html

總結

以上是生活随笔為你收集整理的win8/Metro开发系七 win8 对常见数据源的解析及处理 如:xml,json,以及html代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。