質問編集履歴

2 質問文の追加

fukkun0412

fukkun0412 score 37

2016/05/31 14:36  投稿

CSVファイルを書き込みたい。
私は今CSVファイルに書き込むプログラムを書いています。
ソースはこちらです。
ファイルの置き場所はResources/CSVData/bring.csvで
pathは"CSVData/bring"としています。
public void WriteCSV(string path)
   {
       //一度読み込む
       TextAsset csv = Resources.Load(path) as TextAsset;
       StringReader reader = new StringReader(csv.text);
       StreamWriter sw;
       FileInfo fi;
       fi = new FileInfo(csv.name);
       sw = new StreamWriter(csv.name,true);
       Debug.Log(fi);
       sw.WriteLine("あかさたな");
       sw.Flush();
       sw.Close();
       
   }
このプログラムでは、コンソールエラーはないものの、ちゃんと作動していませんでした。新しくCSVファイル(元のCSVファイルのコピー)の中身を見ると変化がありませんでした。
Resources.LoadではなくStreamReader sr = new StreamReader(Application.dataPath + path)を用いたもので行うとUnity上では作動するが、他のプラットフォーム(webPlayer・Android)で動かすと作動しませんでした。
treamReader sr = new StreamReader(Application.dataPath + path)を用いたものとResources.Loadを用いたものでは大きく違うのは理解しているつもりです。
そこでなのですが、
・このプログラムの問題点はどのような問題点があるのか?
・そもそもこのプログラム自体間違いなのか?
・その改善点は?
この三つについてお聞きしたいのです。皆さま何卒よろしくお願いいたします。
この三つについてお聞きしたいのです。皆さま何卒よろしくお願いいたします。
追記
・Resourceフォルダの中のCSVファイルの書き込みについての質問です。
・質問の概要はResourceフォルダの中のCSVファイルの内容を書き込みたい(更新したい)というのが質問の概要です。
・できればResourceフォルダから移動させたくはないです。
  • Unity

    11701 questions

    Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。

1 質問分の修正

fukkun0412

fukkun0412 score 37

2016/05/30 21:57  投稿

CSVファイルを書き込みたい。
私は今CSVファイルに書き込むプログラムを書いています。
ソースはこちらです。
ファイルの置き場所はResources/CSVData/bring.csvで  
pathは"CSVData/bring"としています。  
public void WriteCSV(string path)
   {
       //一度読み込む
       TextAsset csv = Resources.Load(path) as TextAsset;
       StringReader reader = new StringReader(csv.text);
       StreamWriter sw;
       FileInfo fi;
       fi = new FileInfo(csv.name);
       sw = new StreamWriter(csv.name,true);
       Debug.Log(fi);
       sw.WriteLine("あかさたな");
       sw.Flush();
       sw.Close();
       
   }
このプログラムでは、コンソールエラーはないものの、ちゃんと作動していませんでした。新しくCSVファイル(元のCSVファイルのコピー)の中身を見ると変化がありませんでした。
Resources.LoadではなくStreamReader sr = new StreamReader(Application.dataPath + path)を用いたもので行うとUnity上では作動するが、他のプラットフォーム(webPlayer・Android)で動かすと作動しませんでした。
treamReader sr = new StreamReader(Application.dataPath + path)を用いたものとResources.Loadを用いたものでは大きく違うのは理解しているつもりです。
そこでなのですが、
・このプログラムの問題点はどのような問題点があるのか?
・そもそもこのプログラム自体間違いなのか?
・その改善点は?
この三つについてお聞きしたいのです。皆さま何卒よろしくお願いいたします。
  • Unity

    11701 questions

    Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る