質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

1519閲覧

Unity AndroidでCSVファイルを読み込む方法

mobaroid

総合スコア21

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

1クリップ

投稿2018/07/26 10:49

Unity AndroidでCSVファイルを読み込む方法

CSVファイルを、/Assets/Resources/CSV/sample.csv という場所に置いています。

Unity Editorでビルドするときは、

C#

1public int[,] redadCSVData(string sFile) { 2// 返り値の2次元配列 3int[,] readToIntData; 4String sFile = "sample.csv"; 5StreamReader sr = new StreamReader(Application.dataPath + "/Resources/CSV/" + sFile); 6string strStream = sr.ReadToEnd(); 7 8System.StringSplitOptions option = StringSplitOptions.RemoveEmptyEntries; 9 10string []lines = strStream.Split(new char[]{'\r','\n'},option); 11 12char []spliter = new char[1]{','}; 13 14int heightLength = lines.Length; 15int widthLength = lines[0].Split(spliter, option).Length; 16 17返り値の2次元配列の要素数を設定 18readToIntData = new int[heightLength, widthLength]; 19 20for (int i = 0; i < heightLength; i++) { 21 for (int j = 0; j < widthLength; j++) { 22 //カンマ分け 23 string [ ] readStrData = lines[i].Split(spliter, option); 24 //型変換 25 readToIntData[i, j] = int.Parse(readStrData[j]); 26 } 27} 28return readToIntData; 29}

のようにしています。
Android用にビルドして実行したいのですが、エラーが出てしまいます。
Androidでは読み込む場所が違うのでしょうか?
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Androidに限りませんが、 Assets/Resources 以下に置かれたファイルは、下記のようにアクセスすることができます。

C#

1Object loadedData = Resources.Load("CSV/sample"); 2 3if (loadedData != null) 4{ 5 // loadedData は「sample1,sample2」のようにCSVの内容が丸ごと入った状態. 6 string strStream = loadedData.ToString(); 7 8 // Split処理. 9}

こちらを試してみてはいかがでしょうか。

投稿2018/07/26 23:08

masanori_msl

総合スコア80

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mobaroid

2018/11/12 04:28

ご返信いただき、ありがとうございます。 解決いたしました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問