当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 开发ASP.NET下的MP3小偷程序

ASP.NET
漫谈.Net开发关于命名空间和目录划分
.net中关于企业Excel报表的生成
.NET中取得IP/用户名等信息常用方法
关于.Net开发下的分布式缓存设计
.NET中为组合框添加自动查询功能
ASP.NET如何进行性能优化问题
开发中如何有效监控.NET应用程序
ASP.NET2.0 显示写入日期和时间语法
用.NET Array类的Sort方法分类数值
Asp.net Mvc Pv4中使用AjaxHelper
Asp.net中Forms验证的角色验证授权(一)
Asp.net中Forms验证的角色验证授权(二)
Asp.Net2.0数据库基本操作方法学习
Asp.Net之枚举类型输出需要类型转换
用.NET的File控件上传文件的解决方案
.NET泛型技巧之类型参数之间的转换
在ASP.NET中将数据直接输出成Excel格式
在.NET框架下使用自定义配置设置
跟ASP.NET MVC一起使用jQuery
Visual Basic中文本框处理技巧集萃

开发ASP.NET下的MP3小偷程序


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 82 ::
收藏到网摘: n/a

昨天在这个地址:http://code.knowsky.com/down/86.html看到一个非常漂亮的MP3的FLASH播放器,真是好看。可是一调试发现里面的歌太老,要不就是听不了。MP3资源都在互联网上,有时听不了也是正常,但大多数不好用,真是用处不大了。仔细分析了一下它的源码,原来是读取目录下的1.xml,2.xml..4.xml文件。我经常在番茄花园听歌,也就是http://www.tomatolei.com,就想能不能把番茄的MP3资源放到这里来放呢?这不就是大家常说的MP3小偷的功能吗?说干就干!

1、分析一下番茄花园的歌来源:PageUrl="http://tomatolei.com/bbs/T_playlist.asx";

2、目标地址:1.xml

3、用程序转换格式:

前台:

<%@Pagelanguage="c#"Codebehind="ReadAndWriteXml.aspx.cs"AutoEventWireup="false"Inherits="读取番茄花园的MP3.ReadAndWriteXml"validateRequest=false%>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">
<HTML>
<HEAD>
<title>读取番茄花园MP3列表</title>
<metacontent="MicrosoftVisualStudio.NET7.1"name="GENERATOR">
<metacontent="C#"name="CODE_LANGUAGE">
<metacontent="JavaScript"name="vs_defaultClientScript">
<metacontent="http://schemas.microsoft.com/intellisense/ie5"name="vs_targetSchema">
</HEAD>
<bodyMS_POSITIONING="GridLayout">
<formid="Form1"method="post"runat="server">
<FONTface="宋体">
<asp:TextBoxid="TextBox1"style="Z-INDEX:101;LEFT:56px;POSITION:absolute;TOP:32px"runat="server"
Width="312px"Height="240px"TextMode="MultiLine"></asp:TextBox>
<asp:Buttonid="Button1"style="Z-INDEX:102;LEFT:160px;POSITION:absolute;TOP:288px"runat="server"
Width="96px"Text="修正~"></asp:Button></FONT></form>
</body>
</HTML>

后台:

usingSystem;
usingSystem.Collections;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Web;
usingSystem.Web.SessionState;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.HtmlControls;
usingSystem.IO;
usingSystem.Net;
usingSystem.Text;
usingSystem.Text.RegularExpressions;
namespace读取番茄花园的MP3
{
 ///<summary>
 ///WebForm1的摘要说明。
 ///</summary>
 publicclassReadAndWriteXml:System.Web.UI.Page
 {
protectedSystem.Web.UI.WebControls.TextBoxTextBox1;
protectedSystem.Web.UI.WebControls.ButtonButton1;
privatestringPageUrl="";

privatevoidPage_Load(objectsender,System.EventArgse)
{
 //在此处放置用户代码以初始化页面
 if(!IsPostBack)
 {
///首先读取番茄花园的acx文件(http://tomatolei.com/bbs/T_playlist.asx)
///
PageUrl="http://tomatolei.com/bbs/T_playlist.asx";
WebClientwc=newWebClient();
wc.Credentials=CredentialCache.DefaultCredentials;
Byte[]pageData=wc.DownloadData(PageUrl);
stringResult=Encoding.Default.GetString(pageData);
TextBox1.Text=Result;

 }
}

#regionWeb窗体设计器生成的代码
overrideprotectedvoidOnInit(EventArgse)
{
 //
 //CODEGEN:该调用是ASP.NETWeb窗体设计器所必需的。
 //
 InitializeComponent();
 base.OnInit(e);
}

///<summary>
///设计器支持所需的方法-不要使用代码编辑器修改
///此方法的内容。
///</summary>
privatevoidInitializeComponent()
{
 this.Button1.Click+=newSystem.EventHandler(this.Button1_Click);
 this.Load+=newSystem.EventHandler(this.Page_Load);
}
#endregion

privatevoidButton1_Click(objectsender,System.EventArgse)
{
 stringtemp=TextBox1.Text;
 TextBox1.Text="<musicsfirstRun=\"1\">";
 TextBox1.Text+=temp;

 TextBox1.Text=TextBox1.Text.Replace("<AsxVersion=3.0>","");
 TextBox1.Text=TextBox1.Text.Replace("<ParamName=\"AllowShuffle\"Value=\"yes\"/>","");
 TextBox1.Text=TextBox1.Text.Replace("</Asx>","");

 TextBox1.Text=TextBox1.Text.Replace("</Entry>","");
 TextBox1.Text=TextBox1.Text.Replace("<Entry>","");

 TextBox1.Text=TextBox1.Text.Replace("<Title>","<musicname=\"");
 TextBox1.Text=TextBox1.Text.Replace("</Title>","\"");
 
 TextBox1.Text=TextBox1.Text.Replace("<Refhref=","addres=");

 TextBox1.Text+="</musics>";

 //TextBox1.Text=TextBox1.Text.Replace("\r\n","");
 ///下面开始生成 1.xml文件
 ///
 StreamWriterswFromFileStreamUTF8Buffer=newStreamWriter(Server.MapPath("./")+"1.xml",false,System.Text.Encoding.UTF8,512);
 swFromFileStreamUTF8Buffer.Write(TextBox1.Text);
 swFromFileStreamUTF8Buffer.Flush();
 swFromFileStreamUTF8Buffer.Close();
}
 }
}