unity 安卓端 JSONunity
时间: 2025-04-17 14:45:08 浏览: 20
### 解析和生成 JSON 数据
在 Unity 安卓平台上处理 JSON 数据涉及两个主要方面:解析现有 JSON 文件以及生成新的 JSON 文件。
#### 解析 JSON 数据
对于已有的 JSON 字符串或文件,在安卓设备上可以通过 `LitJson` 库来轻松实现解析操作。例如,给定一段 JSON 格式的字符串 `jsonStr` 可以通过如下方式将其转换成易于访问的对象:
```csharp
using LitJson;
// 将 JSON 字符串映射为 JsonData 对象以便于后续操作
JsonData data = JsonMapper.ToObject(jsonStr);
print(data["name"]); // 输出 name 键对应的值
print(data["age"]); // 输出 age 键对应的值
```
当涉及到实际应用中的资源管理时,考虑到 StreamingAssets 文件夹在 Android 平台上是只读属性,因此建议先复制所需的 JSON 文件至可写入的位置如 Application.persistentDataPath 下再进行加载[^2]。
#### 生成 JSON 数据
为了将 C# 中的数据结构(比如字典)序列化为 JSON 文本并存储起来,可以采用下面的方法:
```csharp
public static void SaveDeviceDict(Dictionary<string, List<string>> pairs)
{
// 使用 LitJson 的 ToJson 方法把 Dictionary 转换成 JSON 表达形式
JsonData jsonData = JsonMapper.ToJson(pairs);
// 构建目标文件路径
string filePath = Path.Combine(Application.persistentDataPath, "data.json");
try {
// 把 JSON 字符串保存到指定位置
File.WriteAllText(filePath, jsonData.ToString(), Encoding.UTF8);
Debug.Log("Dictionary data saved to: " + filePath);
}
catch (Exception e) {
Debug.LogError($"Failed to write file due to {e.Message}");
}
}
```
这段代码展示了如何利用 `LitJson.JsonMapper.ToJson()` 函数将 .NET 集合类型转换为 JSON 格式,并最终保存到本地磁盘中去[^4]。
#### 处理 Excel 到 JSON 的转换
有时开发者可能还需要从 Excel 导入数据作为游戏内的配置项或其他用途。此时可通过专门设计的工具链完成这一过程,即先把 Excel 内容导出成为 JSON 文件,之后按照前述方法导入项目内使用[^5]。
阅读全文
相关推荐















