簡體   English   中英

獲取文件名和擴展名並使用子字符串刪除查詢字符串

[英]get filename and extension and remove query string using substring

嘿伙計們,

我有幾個圖像網址,我從中下載數據並將其保存在數據庫中。 我用(imageurl.Split('/'))[(imageurl.Split('/').Length) - 1]; 創建文件名。

問題是,有一些url包含查詢字符串。 由於我得到的文件名有模式imgname.img_type_extension?somefield=somevalue

我如何從上面的子字符串中獲取filename.extension離開查詢字符串?

謝謝你停下來......

var path = imageurl.Split('?')[0];
var fileName = Path.GetFileNameWithoutExtension(path);

編輯:對於文件名WITH擴展名只使用Path另一種方法

    var path = imageurl.Split('?')[0];
    var fileName = Path.GetFileName(path);

怎么樣

var fNameWithQuery = (imageurl.Split('/'))[(imageurl.Split('/').Length) - 1];
//get first string from array created by splitting substring on occurence of '?'
var fNameAndExt = fNameWithQuery.Split('?')[0];

為什么不讓UriBuilder為你解析呢?

var url = new UriBuilder("http://x.com/xyz/imgname.img_type_extension?somefield=somevalue");
string filename = Path.GetFileName(url.Path);

也許這個?

    string imgUrl = @"C:\blah.jpg"; //Loaded from DB
    System.IO.FileInfo f = new System.IO.FileInfo(imgUrl);
    string fileName = f.Name.Split('.')[0];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM