获取千千静听歌词下载地址(Delphi) 源码+Demo发布

    之前做过通过千千静听歌词服务器下载歌词(Delphi版) 这个Demo程序,做完之后将主要过程封装在一个单元里了。

现在拿出来吧。也没有什么好保留的,呵呵。

   主要封装了两个函数

   function LrcListLink(Atrist,Title:string;Server:Integer):string;
   function LrcDownLoadLink(LrcId:Integer;Atrist,Title:string;Server:Integer):string;

   Atrist,Title就不用多说了,歌手和歌曲名。 Server参数是用来指定电信或网通歌词服务器的。0代表电信,1代表网通。

   LrcDownLoadLink函数中的LrcID是通过LrcListLink函数获取到的一个XML中查找到得对应歌词的ID。

 

   整个操作过程是这样的.

   第一步,调用LrcListLink函数,返回的是一个String类型的URL,该地址为歌词服务器搜索到的歌词列表(XML格式),idhttp.Get即可获取。。

   第二步,从XML歌词列表中选取歌词,将歌词对应的LrcID记录下来传给LrcDownLoadLink。

   第三步,调用LrcDownLoadLink函数,返回URL,该地址即为第二步中选择的歌词的下载地址,idhttp.Get即可获取。

   具体操作方法详见附件中的Demo

   说明:由于Delphi7不支持Unicode所以做了GB2Unicode转码,而Delphi2009以上就支持Unicode了,直接使用了TEncoding类。

           再一点,Delphi7中虽然转Unicode码实现了获取地址,但是歌词文件中若是包含Unicode字符时,则无法显示。如果有谁能解决Delphi7下

          Unicode字符显示,烦请发一份Demo给我,在此先感谢了。

 

   Demo中本人由于不太了解XML的操作类型,所以只是简单的字符串提取。囧TL。以后再改吧,不影响地址解析单元的使用。

 

--------------------------------毫--不--华--丽--的--分--割--线--------------------------------

                                     /Files/lahcs/获取千千静听歌词下载地址.rar

--------------------------------毫--不--华--丽--的--分--割--线--------------------------------

posted @ 2010-01-23 12:03  LAHCS  阅读(1856)  评论(1编辑  收藏  举报