質問: {""+(CountTextL.text) }; //swL.Close(); } } ``` ### 試したこと 上記のコメントアウトしているところは自分なりに調べて試しましたが、saveDataL.csvは作成さてましたが中身が空っぽでした。 ### 補足情報(FW/ツールのバージョンなど)
回答: 調べながら順番に理解していきましょう。 1.参考サイトを見ながら、`Start()`の中で書き出しが出来ることを確認する。 「unity csvファイル」などで調べれば出てきます。 UnityでCSVファイルを書き出ししたときのメモ 2.1のコードを少しずつ書き換えて、どの行が何を意味しているか理解する。 `swL.WriteLine("hoge");`が実際にテキストを書き込んでいるメソッドですが、コード内のどこにも存在していないので当然何も書き込まれません。 他にも必要なコードが抜けているので確認してください。 3.書き込みたい内容を確認する。 strLがそうですか? 何故`string[]`にしているのでしょうか? 配列を作りたいのでしょうか? 配列を作ったとしたら、どうやってそれをWriteLineに渡しますか? やり方が分からないなら「unity 配列」で検索してみてください。 4.「上書き」はどうやるのか調べる。 上記を全て直したとしても、このままだとファイルが「作り直し」されることになり、最後の値しか保持されません。 上書きの方法も「unity csvファイル 上書き」で出て来ます。 5.全体の調整 1回キー入力後に書き込んだとしても、その後`Close()`してしまうと、再度ファイルを開き直さないと書き込みが出来ません。 また、左キーを連打されたらその都度ファイル書き込みが走り、負荷が高くなる可能性があります。(まぁデバッグ用なのでそれでもいいならいいんですが) 「実行終了後にエクセル書き出ししたい」らしいですが、もし「ゲーム(アプリ)の終了時」を指しているなら、そのタイミングを取得しなければいけません。 「unity 終了時」で検索してみてください(実際に何のプラットフォームで動かすかが若干影響してくるかもしれません)。 最後に以下もご覧ください。 質問するときのヒント|teratail(テラテイル)