2016-06-23 8 views
1

%20をファイル名から削除しますが、それはUri形式である必要があります。C#でUriから%20を削除するには?

Dictionary<string, Uri> urilist = new Dictionary<string, Uri>(); 
    string fileName="test data.txt"; 

Uri partUriDocument; 
partUriDocument = PackUriHelper.CreatePartUri(new Uri(fileName, UriKind.Relative)); 

urilist.Add(fileName, partUriDocument); 

partUriDocumentには、test%20data.txtが含まれています。

作成方法test data.txt

+1

なぜしたいですか?これは有効なURLであり、 'test data.txt'はそうではありません。 – DavidG

+0

DavidGと合意して、初めてコードを誤読しました。 %20はUriの空間表現です。だからそれをそのまま保つ方が良いです。 –

答えて

5

partUriDocumentには、テスト%20data.txtが含まれています。
test.txtをテストする方法。

あなたは正しくデコード何をしたいとも呼ばれ

var decodedFileName = WebUtility.UrlDecode(fileName); // returns "test data.txt" 
0

を使用して、それをデコードすることができます。あなたは

string str = "123"; //String 
int number = Int.Parse(str) // Decode string into a number 

あなたエンコード URIであなたの文字列から行くとき、それは文字列で、あなたデコードあなたのURI、使用している同じメカニックだ

使用Uri.Parse

var str = Uri.Parse(Uri); 
+0

デコード?だから...デコード権? – DavidG

+0

質問に** C#**というタグが付いていることにご注意ください。 C#には 'Uri.parse(input)'はありません。 – nozzleman

+0

@DavidG DE編集:D Dunnoなぜ私はそれを書いたのですか?ちょうど – Mekap

関連する問題