はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

【Unity】文字列をURLエンコードする方法

はじめに

今回は文字列をURLエンコードする方法についての記事になります!

よくこのようなURLを見たことがあるのではないでしょうか。

f:id:hanaaaaaachiru:20190620161954p:plain

これはURLで使えるような文字にするURLエンコードされているので%などが含まれた文字列に変換されています。

ちなみに上の画像の途中にある%がいっぱいあるところは「サッカー日本代表」と書かれているみたいです。

さっそくやっていきましょう。

やり方

using UnityEngine;
using System.Web;

public class UrlEncodTest : MonoBehaviour
{
    void Start()
    {
        string text = "サッカー日本代表";

        string urlEnc = HttpUtility.UrlEncode(text);

        Debug.Log(urlEnc);
    }
}

f:id:hanaaaaaachiru:20190620163009p:plain

HttpUtility.UrlEncodeメソッドを使うことでURLエンコードすることができます。

また引数に"shift_jis"などの文字列を指定すればそれを用いたURLエンコードをしますが、指定しないと"UTF-8"でされます。

.NET4.0の場合

ただし、上の方法では.NET4.0を利用している場合は使えませんでした。

これの代替案としてUri.EscapeDataStringメソッド(Uri.EscapeUriString)を使いましょう。

using UnityEngine;
using System;

public class UrlEncodTest : MonoBehaviour
{
    void Start()
    {
        string text = "サッカー日本代表";

        string urlEnc = Uri.EscapeDataString(text);

        Debug.Log(urlEnc);
    }
}

さいごに

なにかのURLを用いたりするときに是非使ってみてください。

今回はここまで!