BiliRanking.Core.TSDownload.GetFileName C# (CSharp) 메소드

GetFileName() 공개 정적인 메소드

根据HTTP头文件并转码获取文件名
public static GetFileName ( string url ) : string
url string 下载地址
리턴 string
        public static string GetFileName(string url)
        {
            string t = "ErrorFile";

            //TODO:支持更多种http头
            try
            {
                HttpWebRequest Myrq = (HttpWebRequest)HttpWebRequest.Create(url);
                HttpWebResponse myrp = (HttpWebResponse)Myrq.GetResponse();
                WebHeaderCollection whc = myrp.Headers;

                Myrq.Abort();

                Encoding e1 = Encoding.GetEncoding("iso-8859-1");
                Encoding e2 = Encoding.Default;
                string s = whc[1];
                byte[] ss = e1.GetBytes(s);
                byte[] sss = Encoding.Convert(Encoding.UTF8, e2, ss);

                t = e2.GetString(sss);
                t = t.Substring(t.IndexOf("\"") + 1, t.LastIndexOf("\"") - t.IndexOf("\"") - 1);
            }
            catch
            {
                int li = url.LastIndexOf('/');
                t = url.Substring(li + 1, url.Length - li - 1);
            }

            return t;
        }