UnityでSpread Sheetからお手軽にcsvをダウンロードする方法です。
Unity2018.4.6
はじめに
Unityでデータを取り扱う際、Spread Sheetなどでデータを作成して、
そこからcsvをエクスポートしてUnityに取り込むことがよくあると思います。
Spread Sheetは一覧性に優れているためこの方法は便利ではありますが、
Unityにcsvを取り込む際のワークフローが複雑だと更新が面倒です。
そこでこの記事ではSpread Sheetから簡単にcsvを取り込む方法を紹介します。
Spread Sheetを公開設定する
まずはGoogle DriveでSpread Sheetを作成します。
今回は以下のようなデータを作成しました。
次にこれを外部からダウンロードできるように公開設定します。
ファイル > ウェブに公開を選択し、公開設定ダイアログを開きます。
そして対象のシートを選択し、形式を「カンマ区切り形式(.csv)」に設定します。
設定後、URLをコピーしておきます。
ダウンロードする
あとはUnityからダウンロードするだけです。
UnityWebRequestを使う場合には以下のようにします。
using System.Collections; using UnityEngine; using UnityEngine.Networking; public class CsvDownloader : MonoBehaviour { private void Start(){ StartCoroutine(Download("前節でコピーしたURLをここに入力する")); } private IEnumerator Download(string url) { using (var request = UnityWebRequest.Get(url)) { yield return request.SendWebRequest(); if (request.error != null || request.isHttpError || request.isNetworkError) { yield break; } Debug.Log(request.downloadHandler.text); } } }
実行すると以下のようなログが表示され、正常にダウンロードできていることが確認できました。