如何使用MiniJSON在Unity3d中编写json文件?

时间:2013-12-10 08:07:54

标签: android json unity3d

最近在Unity3d中使用MiniJSON,我只能从WWW类(从网络服务器或本地存储)读取json文件。现在我只想知道如何将字符串写入json文件,然后将其保存在Application.persistentDataPath上或将json文件发送到服务器? Json.Serialize()只是将数据转换为字符串,但不会将json写入文件,这就是我真正想要的。

有没有人像Json一样有一些写json的经验。 LitJson中的Writer还是用php生成一个.json文件?

-Android / iOS平台

1 个答案:

答案 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();

希望这有帮助。