어제 저는 이 주소에서 매우 아름다운 MP3 FLASH 플레이어를 보았습니다: http://code.downcodes.com/down/86.html 정말 멋집니다. 그런데 디버깅을 해보니 그 안에 있는 노래가 너무 오래됐거나 들을 수 없다는 걸 발견했어요. MP3 자원은 모두 인터넷에 있고 가끔 들을 수 없는 것이 정상이지만, 대부분은 사용하기 쉽지 않고 실제로 거의 쓸모가 없습니다. 소스 코드를 주의 깊게 분석한 결과 디렉터리에 있는 1.xml, 2.xml..4.xml 파일을 읽는 것으로 나타났습니다. 저는 토마토 가든( http://www.tomatolei.com) 에서 음악을 자주 듣는데, 여기에 토마토의 MP3 자료를 넣어도 되는지 궁금합니다. 이것이 흔히 MP3 도둑이라 불리는 기능이 아닌가? 그냥 해!
1. Tomato Garden 노래 소스 분석: PageUrl = " http://tomatolei.com/bbs/T_playlist.asx "
2. 대상 주소: 1.xml
3. 프로그램을 사용하여 형식 변환:
프런트 데스크:
< %@ 페이지 언어 ="c#" Codebehind="ReadAndWriteXml.aspx.cs" AutoEventWireup="false" Inherits="토마토 가든의 MP3.ReadAndWriteXml 읽기" verifyRequest=false%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<헤드>
<title>토마토 가든 MP3 목록 읽기</title>
<메타 콘텐츠="Microsoft Visual Studio .NET 7.1" 이름="생성기">
<메타 콘텐츠="C#" 이름="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content=" http://schemas.microsoft.com/intellisense/ie5 " name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<FONT 페이스="宋体">
<asp:TextBox id="TextBox1" style="Z-INDEX: 101; 왼쪽: 56px; 위치: 절대; 위쪽: 32px" runat="서버"
Width="312px" Height="240px" TextMode="MultiLine"></asp:TextBox>
<asp:Button id="Button1" style="Z-INDEX: 102; 왼쪽: 160px; 위치: 절대; TOP: 288px" runat="서버"
Width="96px" Text="수정~"></asp:Button></FONT></form>
</본문>
</HTML>
백엔드:
시스템 사용;
System.Collections 사용;
System.ComponentModel 사용;
System.Data 사용;
System.드로잉 사용;
System.Web 사용;
System.Web.SessionState 사용;
System.Web.UI 사용;
System.Web.UI.WebControls 사용;
System.Web.UI.HtmlControls 사용;
System.IO 사용;
System.Net 사용;
System.Text 사용;
System.Text.RegularExpressions 사용;
네임스페이스는 Tomato Garden MP3를 읽습니다.
{
/// <요약>
/// WebForm1에 대한 요약 설명입니다.
/// </요약>
공개 클래스 ReadAndWriteXml : System.Web.UI.Page
{
보호된 System.Web.UI.WebControls.TextBox TextBox1;
보호된 System.Web.UI.WebControls.Button Button1;
개인 문자열 PageUrl = "";
개인 void Page_Load(개체 보낸 사람, System.EventArgs e)
{
//여기에 사용자 코드를 넣어 페이지를 초기화합니다. if(!IsPostBack)
{
///먼저 Tomato Garden의 acx 파일을 읽습니다( http://tomatolei.com/bbs/T_playlist.asx ).
///
PageUrl = " http://tomatolei.com/bbs/T_playlist.asx ";
WebClient wc = 새로운 WebClient();
wc.Credentials = CredentialCache.DefaultCredentials;
Byte[] pageData = wc.DownloadData(PageUrl);
문자열 결과 = Encoding.Default.GetString(pageData);
TextBox1.Text=결과
}
}
#region 웹 양식 디자이너에 의해 생성된 코드는 protected void OnInit(EventArgs e)를 재정의합니다.
{
//
// CODEGEN: 이 호출은 ASP.NET Web Forms 디자이너에 필요합니다.
//
초기화구성요소();
base.OnInit(e);
}
/// <요약>
/// 필요한 메서드는 디자이너에서 지원됩니다. 코드 편집기를 사용하여 /// 이 메서드의 내용을 수정하지 마세요.
/// </요약>
개인 무효 초기화 구성 요소()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(개체 전송자, System.EventArgs e)
{
문자열 임시=TextBox1.Text;
TextBox1.Text="<음악 우선 실행="1">";
TextBox1.Text+=temp;
TextBox1.Text=TextBox1.Text.Replace("<Asx Version=3.0>","");
TextBox1.Text=TextBox1.Text.Replace("<Param Name="AllowShuffle" 값="yes"/> ","");
TextBox1.Text=TextBox1.Text.Replace("</Asx>","")
TextBox1.Text=TextBox1.Text.Replace("</Entry>","");
TextBox1.Text=TextBox1.Text.Replace("<항목>","")
TextBox1.Text=TextBox1.Text.Replace("<제목>","<음악 이름="");
TextBox1.Text=TextBox1.Text.Replace("</제목>",""");
TextBox1.Text=TextBox1.Text.Replace("<Ref href=","addres=");
TextBox1.Text+="</musics>";
//TextBox1.Text=TextBox1.Text.Replace("r N","");
/// 1.xml 파일 생성을 시작하겠습니다 ///
StreamWriter swFromFileStreamUTF8Buffer=new StreamWriter(Server.MapPath("./")+"1.xml",false,System.Text.Encoding.UTF8,512);
swFromFileStreamUTF8Buffer.Write(TextBox1.Text);
swFromFileStreamUTF8Buffer.Flush();
swFromFileStreamUTF8Buffer.Close();
}
}
}