2012-08-08 53 views
0

我救了一個鏈接,看起來像這樣解壓文件名保存

~\quizes\314757_49903420_1508831626_a.jpg 

一個數據庫中,我用下面的代碼來提取文件名

Uri uri = new Uri(BulletedList1.DataValueField.ToString()); 
     string filename=Path.GetFileName(uri.LocalPath); 

,但它提供了以下錯誤 無法確定URI的格式。

+0

「〜」字符是否代表您的應用程序根目錄? BulletedList1.DataValueField.ToString()是什麼值? – Dan 2012-08-08 07:13:29

+0

和你的問題是?找到另一種方式? – 2012-08-08 07:14:23

回答

0

只需使用Path.GetFileName,是這樣的:

var dbValue = @"~\quizes\314757_49903420_1508831626_a.jpg"; 
string filename = Path.GetFileName(dbValue); 

對於示例它應該工作正常。

編輯

只是一個猜測,但如果你有從讀入一個BulletList控制數據庫中的所有值,你可以看看Items屬性,以便閱讀。可能是這樣的:

 foreach (var item in BulletedList1.Items) 
{ 
    string filename = Path.GetFileName(item.ToString()); 
    // Do stuff with the file name 
} 
+0

這不是給我的價值,但它只是獲得列的名稱。 – Kamran 2012-08-08 07:27:42

+0

已更新代碼以顯示其工作原理。你只需要傳遞你從數據庫中讀取的正確值。 – 2012-08-08 07:31:41

0

我通過使用以下內容完成了我的工作。

ListItem li = BulletedList1.Items[e.Index]; 

     string filename = Path.GetFileName(li.Value.ToString());