前提・実現したいこと
Unityでゲームを作ろうとしている者です。
用意したcsvファイルを読み込みたいのですが、
読み込んだ後出力しようとするとエラーになってしまいます。
エラー文章も何を言っているのかわかりません…。
どうも、対象となるCSVファイルに全角文字が入っているとエラーになるようなのです。
全角文字列もCSVに突っ込んで読み込ませるにはどうしたらよいですか。
よろしくお願いします。
発生している問題・エラーメッセージ
Index was out of range. Must be non-negative and less than the size of the collection.
試したこと
読み込みコードは以下のサイト様を参考にしました。
というかほとんどこちらのコードを写しました。
https://note.com/macgyverthink/n/n83943f3bad60
該当のソースコード
C#
1using System.Collections.Generic; 2using UnityEngine; 3using System.IO; 4 5public class csv_test : MonoBehaviour 6{ 7 8 TextAsset csvFile; // CSVファイル 9 List<string[]> csvDatas = new List<string[]>(); // CSVの中身を入れるリスト 10 11 void Start() 12 { 13 csvFile = Resources.Load("testCSV") as TextAsset; // Resouces下のCSV読み込み 14 StringReader reader = new StringReader(csvFile.text); 15 16 // , で分割しつつ一行ずつ読み込み 17 // リストに追加していく 18 while (reader.Peek() != -1) // reader.Peaekが-1になるまで 19 { 20 string line = reader.ReadLine(); // 一行ずつ読み込み 21 csvDatas.Add(line.Split(',')); // , 区切りでリストに追加 22 } 23 24 // csvDatas[行][列]を指定して値を自由に取り出せる 25 Debug.Log(csvDatas[1][1]); 26 27 } 28 29}
csv
1//全て半角だとエラーは出ません(5 が出力される) 21,2,3 34,5,6
csv
1//全角文字があるとエラーが出ます… 2全角だぜ,2,3 34,5,6
補足情報(FW/ツールのバージョンなど)
Unity 2018.4.28f1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。