実現したいこと
IosでのXMLファイルの読み書き先の位置を知りたい。
発生している問題・分からないこと
UnityでIos向けにビルドしたアプリでXMLファイルの読み書きができません。
//読み込み reader = new StreamReader(Application.streamingAssetsPath + "/savedata.json");
//書き込み
writer = new StreamWriter(Application.persistentDataPath + "/savedata.json", false);
上記のApplication.streamingAssetsPathの部分の読み込み先、ロード先をお願いします。
--------------------------更新-----------------------------
下記の回答様のおかげでロードできるようになりました。
ありがとうございます!
更新前はロード時に
if (System.IO.File.Exists(Application.streamingAssetsPath + "/savedata.json") == false)
によって偽と返されたましたが下記回答様のおかげでロードはされるようにはなりました。
しかし今度はファイルの書き込みがされていないようです。
Application.dataPathの部分を
Application.persistentDataPath
にするとファイル内のデータが更新されていないようです。
(具体的には購入したアイテムなどの変数が更新されていない)
また上記にコードを書き換えるとPCでUnityでテストプレイした時に
Unityフォルダ内にjsonファイルが作成されなくなりました。
(ファイルの保存先をスマホ用にしたからだと思いますがXMLファイルを初めて使うのでよくわかりませんでした)
出来れば書き込みの部分
writer.Write(jsonstr);
writer.Flush();
writer.Close();
も含めて添削お願いします!
エラーメッセージ
error
1特になし。実機にてロード不可。
該当のソースコード
//読み込み関数内にて StreamReader reader; reader = new StreamReader(Application.streamingAssetsPath + "/savedata.json"); datastr = reader.ReadToEnd(); reader.Close(); Pet_Unlocks pet_Unlocks = JsonUtility.FromJson<Pet_Unlocks>(datastr); //書き込み関数内にて StreamWriter writer; Pet_Unlocks pet_Unlocks = this.shopManager.Pet_Unlocks; string jsonstr = JsonUtility.ToJson(pet_Unlocks); writer = new StreamWriter(Application.persistentDataPath + "/savedata.json", false); writer.Write(jsonstr); writer.Flush(); writer.Close();
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
Application.streamingAssetsPath,Application.AssetsPathなど試しましたが読み込めませんでした。
補足
特になし

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/01/03 07:59
2024/01/03 09:53
2024/01/03 11:41