URL Kodlaması kullanarak C#
Bir arkadaşım için geliştirdiğim bir uygulama var. VB forum yazılımı için bir POST isteği gönderir ve biri (dışarı çıkmadan kurabiye ya da bir şey ile) kaydeder.
Kullanıcı giriş yaptığında kendi yerel makinede bir yol oluşturan bir değişken yarattım.
c:\tempfolder\date\username
Bu sorun, bazı kullanıcı adları "Geçersiz karakter" özel durum. atıyor yani Eğer kullanıcı adım mas|fenix
örneğin bir istisna.. atmak olur
Path.Combine( _
Environment.GetFolderPath(System.Environment.SpecialFolder.CommonApplicationData), _
DateTime.Now.ToString("ddMMyyhhmm") "-" form1.username)
Dize çıkarmak istemiyorum, ama kendi kullanıcı adı ile bir klasör sunucusu FTP ile oluşturulur. Ve bu benim ikinci soruya yol açar. Eğer sunucu üzerinde bir klasör yaratıyorum eğer "geçersiz karakter"? I terk Ben sadece sunucu Linux tabanlı olduğu için bu isteyin, ve eğer Linux bunu kabul ederse emin ya da değil.. ben değilim
EDİT: URL kodlamak.. Burada yapmak istediğim şey, istediğim bir şey DEĞİL gibi görünüyor:
old username = mas|fenix
new username = mas%xxfenix
%Xx ASCII değeri veya başka bir değer olduğu kolayca karakterini belirleyecek.
CEVAP
Sadece kullanıcı adı veya geçersiz olabilir URL diğer bölümü kodlamak gerekir. URL bir URL kodlama bir yana bu gibi sorunlara yol açabilir
string url = HttpUtility.UrlEncode("http://www.google.com/search?q=Example");
Verecektir
http://www.google.com/search?q=Example
Belli ki bu şey işe yaramayacak. Bunun yerine, bu gibi sorgu dizesi anahtar/değer çiftinin TEK değer kodlamak gerekir:
string url = "http://www.google.com/search?q=" HttpUtility.UrlEncode("Example");
Umarım bu yardımcı olur. Ayrıca teedyay de belirtildiği gibi, hala yasadışı dosya adı emin olmak gerekir karakterleri kaldırılır veya başka bir dosya sistemi yolu gibi olmayacak.
Centos5 Mono yükleyin.5 kullanarak YUM...
eğer nesne özelliği varsa kontrol - de...
Nasıl Diablo 2 görsel girişini kullana...
Jilet kullanarak açıklayıcı görünümler...
Kullanarak " nelerdir;!önemli"...