每次要取得檔案還是網址的某一部份就要查一下有哪些可以用

乾脆就看一下人家用的東西也整理一下不然常常都要再查

也是有一點小麻煩

下面是Path的使用

string FilePath = @"D:\test\test.rar";
string FilePath1 = @"D:\";
string FilePath2 = @"test\test.rar";
Response.Write("範例文件:" + FilePath);
Response.Write(@"變更副檔名Ans:Ans:D:\test\test.dat");
Response.Write(System.IO.Path.ChangeExtension(FilePath, "dat"));


Response.Write(@"取得檔案路徑Ans:D:\test");
Response.Write(System.IO.Path.GetDirectoryName(FilePath));


Response.Write(@"取得副檔名Ans:.rar");
Response.Write(System.IO.Path.GetExtension(FilePath));


Response.Write(@"取得檔案名稱包含副檔名Ans:test.rar");
Response.Write(System.IO.Path.GetFileName(FilePath));


Response.Write(@"取得檔案名稱不包含副檔名Ans:test");
Response.Write(System.IO.Path.GetFileNameWithoutExtension(FilePath));


Response.Write(@"回傳最上層實體路徑Ans:D:\");
Response.Write(System.IO.Path.GetPathRoot(FilePath));


Response.Write(@"建立隨機檔Ans:mvho5ulp.wrn");
Response.Write(System.IO.Path.GetRandomFileName());


Response.Write(@"建立暫存檔並回傳整路徑Ans:C:\Documents and Settings\Gavin\Local Settings\Temp\tmp6B.tmp");
Response.Write(System.IO.Path.GetTempFileName());


Response.Write(@"系統暫存檔路徑Ans:C:\Documents and Settings\Gavin\Local Settings\Temp\");
Response.Write(System.IO.Path.GetTempPath());


Response.Write(@"是否包含副檔名Ans:True");
Response.Write(System.IO.Path.HasExtension(FilePath));


Response.Write(@"絕對路徑還是相對路徑Ans:True");
Response.Write(System.IO.Path.IsPathRooted(FilePath));


Response.Write(@"取得完整路徑檔名Ans:D:\test\test.rar");
Response.Write(System.IO.Path.GetFullPath(FilePath));


Response.Write(@"將二個路徑合併Ans:D:\test\test.rar");
Response.Write(System.IO.Path.Combine(FilePath1, FilePath2));

再來就是Request了

這個有一個地方有更完整的說明.....

http://blog.miniasp.com/post/2008/02/10/How-Do-I-Get-Paths-and-URL-fragments-from-the-HttpRequest-object.aspx

我也大概都有try一次

//這是測試網址:   http://localhost:6101/Web/DemoRequest.aspx/info?qy=1
Response.Write(Request.ApplicationPath);
Response.Write(@"Ans: /Web ");

Response.Write(Request.PhysicalPath);
Response.Write(@"Ans: D:\Practice\GavinWebSite\Web\DemoRequest.aspx");

Response.Write(Request.PhysicalApplicationPath);
Response.Write(@"Ans: D:\Practice\GavinWebSite\Web\");

Response.Write(Request.CurrentExecutionFilePath);
Response.Write(@"Ans: /Web/DemoRequest.aspx");

Response.Write(Request.FilePath);
Response.Write(@"Ans: /Web/DemoRequest.aspx");

Response.Write(Request.Path);
Response.Write(@"Ans: /Web/DemoRequest.aspx");

Response.Write(Request.RawUrl);
Response.Write(@"Ans: /Web/DemoRequest.aspx?qy=1");

Response.Write(Request.Url.AbsolutePath);
Response.Write(@"Ans: /Web/DemoRequest.aspx");

Response.Write(Request.Url.AbsoluteUri);
Response.Write(@"Ans: http://localhost:6101/Web/DemoRequest.aspx?qy=1");

Response.Write(Request.Url.Scheme);
Response.Write(@"Ans: http");

Response.Write(Request.Url.Host);
Response.Write(@"Ans: localhost");

Response.Write(Request.Url.Port);
Response.Write(@"Ans: 6101");

Response.Write(Request.Url.Authority);
Response.Write(@"Ans: localhost:6101");

Response.Write(Request.Url.LocalPath);
Response.Write(@"Ans: /Web/DemoRequest.aspx");

Response.Write(Request.PathInfo);
Response.Write(@"Ans: /info");

Response.Write(Request.Url.PathAndQuery);
Response.Write(@"Ans: /Web/DemoRequest.aspx/info?qy=1");

Response.Write(Request.Url.Query);
Response.Write(@"Ans: ?qy=1");

Response.Write(Request.Url.Fragment);
Response.Write(@"Ans: 空的因為沒有逸出");    

string[] segments = Request.Url.Segments;
foreach (string s in segments)
{
    Response.Write(s + "
"); } Response.Write(@"Ans: / "); Response.Write(@"Ans: Web/ "); Response.Write(@"Ans: DemoRequest.aspx/ "); Response.Write(@"Ans: info ");
arrow
arrow
    全站熱搜

    鴨爸 發表在 痞客邦 留言(0) 人氣()