前回より Unityを用いて、データを Base64 変換 する方法を紹介しています。
Base64とはデータを基本的な64種類の印字可能な英数字のみで表すデータ方式。
Unityでの開発で常に使うものでもないですが。サーバーとの連携時にクライアント側での変換が必要と言う方は多いのではないでしょうか。
Unityでの開発で常に使うものでもないですが。サーバーとの連携時にクライアント側での変換が必要と言う方は多いのではないでしょうか。
前回はまずは Base64変換とは と Unityでの使用法を解説しました。今回は実際に Unityでテキストデータを Base64変換してみます。

【テキストデータをBase64化】
ここからは実例を紹介します。まず通常のテキストデータを Base64変換して、また逆に元に戻してみましょう。
まず前回説明した通り、Base64変換には byte[]データを介する必要がありますので、テキスト => byte[ ] と、byte[ ] => テキスト の変換が必要となります。それには以下の方法を使います。
(注意: using System.Text; が必要です。)
テキスト => byte[ ]
byte[] bytes = Encoding.UTF8.GetBytes (text);
byte[ ] => テキスト
string text = Encoding.UTF8.GetString (bytes);
using System.Collections; using System.Collections.Generic; using UnityEngine; using System.Text; public class Base64_Conversion : MonoBehaviour { void Start() { string text_Before = "変換前のテキスト"; //String->byte変換 byte[] byte_Before = Encoding.UTF8.GetBytes(text_Before); //BASE64への変換 string encodedText = System.Convert.ToBase64String(byte_Before); Debug.Log(encodedText); //BASE64からの変換 byte[] byte_After = System.Convert.FromBase64String(encodedText); //byte->String変換 string text_After = Encoding.UTF8.GetString(byte_After); Debug.Log(text_After); } }
【実行結果】
そして、その実行結果は以下のようになります。


まず、最初の Base64変換後のテキストを出力すると以下のようになっています。
正しいか正確には分かりませんが、それらしいテキストが出力されます。

そして、その Base64変換された結果をテキストへ逆変換すると以下のようになりました。
最初のテキストに戻りましたので、途中の Base64変換も正しかったことが分かります。


Base64変換の基礎的な説明は終わりました。次回はより UnityらしくTextureのデータを Base64のテキストに変換してみます。
Sponsored Link