原博客已经有例子,这里再示例,并采用强类型读取数据表列资料。 http://msdn.microsoft.com/zh-cn/library/vstudio/360dye2a.aspx XML创建保存读取
读取条件设定.WriteXml("XmlDocument.xml");/*保存*/
读取条件设定.Dispose();
DataSet newDataSet = new DataSet("New DataSet");
newDataSet.ReadXml("XmlDocument.xml");/*读取*/
DataTable 搜索歌曲(string 名称)
{
string 百度API = "http://box.zhangmen.baidu.com/x?op=12&count=1&title=" + 名称 + "$$";
DataSet 数据表集 = new DataSet();
数据表集.ReadXml(new XmlTextReader(百度API));
DataTable 歌曲列表 = new DataTable(); 歌曲列表.TableName = "歌曲列表";
歌曲列表.Columns.Add("歌曲地址"); 歌曲列表.Columns.Add("歌词地址"); 歌曲列表.Columns.Add("歌曲类型");/*自定义添加列名称*/
if (数据表集.Tables["网址url"] != null)
{
int 行 = 0;
foreach (DataRow 元素 in 数据表集.Tables["网址url"].Rows)
{
歌曲列表.Rows.Add();/*动态添加行*/
string 歌曲编码 = 元素.Field<string>("encode"),
歌词地址 = 元素.Field<string>("lrcid"),
歌曲地址 = 歌曲编码.Replace(歌曲编码.Substring(歌曲编码.LastIndexOf("/") + 1), 元素.Field<string>("decode"));
歌词地址 = (歌词地址 == "0") ? "暂无歌词" : "http://box.zhangmen.baidu.com/bdlrc/" + (Int32.Parse(歌词地址) / 100).ToString() + "/" + 歌词地址 + ".lrc";
string 歌曲类型 = "";
switch (元素.Field<string>("type"))
{
case "0": 歌曲类型 = "rm"; break;
case "1": 歌曲类型 = "mp3"; break;
case "2": 歌曲类型 = "wma"; break;
case "8": 歌曲类型 = "mp3"; break;
}
歌曲列表.Rows[行][0] = 歌曲地址;/*给行添加数据*/
歌曲列表.Rows[行][1] = 歌词地址;
歌曲列表.Rows[行][2] = 歌曲类型;
行++;
}
}
return 歌曲列表;
}