最近在Unity3d中使用MiniJSON,我只能从WWW类(从网络服务器或本地存储)读取json文件。现在我只想知道如何将字符串写入json文件,然后将其保存在Application.persistentDataPath上或将json文件发送到服务器? Json.Serialize()只是将数据转换为字符串,但不会将json写入文件,这就是我真正想要的。
有没有人像Json一样有一些写json的经验。 LitJson中的Writer还是用php生成一个.json文件?
-Android / iOS平台
答案 0 :(得分:-1)
传统上,您希望通过HTTP请求发送JSON,而不是整个文件。以下是Unity3D中的示例HTTP请求:Unity GET/POST Wrapper
最后,你会发送一些看起来像的东西:
http://www.YourSite.com/YourFile.php?someJson={"Your":"Json"}
我建议您在尝试实施之前阅读HTTP协议,网上有大量有关它的信息。但长话短说,协议的两种常见方法是GET和POST。 Unity3D和PHP都支持这个协议。
在PHP中,当从Unity调用页面并将数据写入文件时,您将执行以下操作来获取变量:
// Get JSON from HTTP Request.
$jsonData = $_GET["someJson"];
// Write JSON to file.
file_put_contents("data/my-data.json", $jsonData);
将数据写入Unity3D中的文件:
StreamWriter sw = new StreamWriter("C:/YourPath");
sw.Write(YourJSON);
sw.Close();
希望这有帮助。