2017-11-09 25 views
-2

私の知識について申し訳ありませんまず、...私は、文字列型の値%B3%F3%C7%F9を持っなかでもUTF8にデコード「コードの文字列」と文字列

私は他のプロセッサからそれを受け取るので、私はそれが作られたのか分からないが...(私はこの文字列を受け取る) 私が唯一知っていることは

  1. あり、これは何かエンコードされた韓国語である(私はそれは
  2. エンコード方法は、私がやってwnat何utf-8の1または

euc-krであるUTF-8文字列に、この奇妙な符号化文字列をデコードすることである)농협だと思います。 (例えば、농협%B3%F3%C7%F9をデコードし、それを文字列型の変数を割り当てる)あなたの注意のための

おかげ

(私はASP.NETコア1.1で働いている)

答えて

1

あなたの%値は、基本的にURLます%F9は249のバイト値を表します。

まず、これをバイト配列に変換します。私はこれを私の例では潜在的に非効率的なやり方でやってきました。これを終えたら、バイト配列をEUC-KRエンコーディングタイプを使って文字列に変換する必要があります。

public static void Main() 
{ 
    string data = "%B3%F3%C7%F9"; 
    byte[] bData = new byte[data.Length/3]; 
    for (int i = 0; i < data.Length; i += 3) 
    { 
     int pos = i/3;    
     bData[pos] = Convert.ToByte(data.Substring(i + 1, 2), 16); 
    } 
    data = System.Text.Encoding.GetEncoding("euc-kr").GetString(bData); 
    Console.WriteLine(data); 
} 

Fiddle

+1

素晴らしいです!できます!!答えとexplainationありがとう! – wallah

関連する問題