using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.IO; public class JsonController : MonoBehaviour
{
public static JsonController instance; private void Awake()
{
if (instance == null) instance = this;
} /// <summary>
/// 对资源的写入操作
/// </summary>
/// <typeparam name="T">数据的类型</typeparam>
/// <param name="data">需要写入的数据</param>
/// <param name="path">需要写入数据的地址</param>
public void Write<T>(T data, string path)
{
string json = JsonUtility.ToJson(data);
File.WriteAllText(path, json);
} /// <summary>
/// 创建数据文件
/// </summary>
/// <typeparam name="T">数据的类型</typeparam>
/// <param name="data">需要写入的数据</param>
/// <param name="path">需要写入数据的地址</param>
public void CreateFile<T>(T data, string path)
{
if (!File.Exists(path))
{
File.Create(path).Dispose(); string json = JsonUtility.ToJson(data);
File.WriteAllText(path, json);
}
} /// <summary>
/// 读取资源
/// </summary>
/// <typeparam name="T">数据的类型</typeparam>
/// <param name="path">需要读取数据的地址</param>
/// <returns></returns>
public T ReadFile<T>(string path)
{
string json = File.ReadAllText(path);
T data = JsonUtility.FromJson<T>(json);
return data;
}
}

仅使用JsonUtility和File类实现Json数据读写的更多相关文章

  1. 仅使用JsonUtility && File类实现Json数据读写

    using System.Collections; using System.Collections.Generic; using UnityEngine; using System; using S ...

  2. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段

    ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...

  3. Java学习笔记——File类之文件管理和读写操作、下载图片

    Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...

  4. C# 实体类转json数据过滤掉字段为null的字段

    C# 实体类转json数据过滤掉字段为null的字段 语法如下: var jsonSetting = new JsonSerializerSettings {NullValueHandling = N ...

  5. Java学习笔记——File类文件管理及IO读写、复制操作

    File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图片 文件和文件夹 相关函数  (boolean) mkdir( ...

  6. 五、Delphi10.3通过REST单元使类和JSON数据互相转换

    一.我们定义一个简单的类 TPeople = class private FName: string; FScore: Integer; FAge: TDateTime; public propert ...

  7. 第31天学习打卡(File类。字符流读写文件)

    File类 概念 文件,文件夹,一个file对象代表磁盘上的某个文件或者文件夹 构造方法  File(String pathname) File(String parent,String child) ...

  8. 05-06 Flutter JSON和序列化反序列化、创建模型类转换Json数据、轮播图数据渲染:Flutter创建商品数据模型 、请求Api接口渲染热门商品 推荐商品

    Config.dart class Config{ static String domain='http://jd.itying.com/'; } FocusModel.dart class Focu ...

  9. 实体类和json互相转换

    /// <summary> /// 将实体类转换为json数据 /// </summary> /// <returns></returns> publi ...

随机推荐

  1. 【MySQL】MySQL-front等客户端连接MySQL_8.0等失败的解决办法

    ALTER USER 'root'@'localhost' IDENTIFIED BY '新的密码' PASSWORD EXPIRE NEVER; ALTER USER 'root'@'localho ...

  2. CentOS 7.3 安装指南 作者: Matei Cezar 译者: LCTT geekpi

    CentOS 7.3 安装指南 作者: Matei Cezar 译者: LCTT geekpi | 2016-12-20 09:12   评论: 11 收藏: 4 分享: 1 基于 Red Hat 企 ...

  3. Linux命令行欢迎界面美化

    默认的SSH命令行登录欢迎界面如下 [c:\~]$ Connecting to 10.x.13.x:22... Connection established. To escape to local s ...

  4. DES加密 超详解 及 C++编程实现

    参考资料: 1.计算机与软件学院实验报告管理系统资料 2.强烈推荐观看:<信息安全技术>课程微课设计 简介 什么是DES DES全称为Data Encryption Standard,即数 ...

  5. lvscan 查看系统中存在的所有LVM逻辑卷

    相关命令:lvresize,lvreduce,lvextend,lvdisplay,lvcreate,lvremove lvscan指令:扫描逻辑卷[语    法]lvscan [选项][功能介绍]l ...

  6. 高德Serverless平台建设及实践

    导读 高德启动Serverless建设已经有段时间了,目前高德Serverless业务的峰值早已超过十万QPS量级,平台从0到1,QPS从零到超过十万,成为阿里集团内Serverless应用落地规模最 ...

  7. 加载动画效果 HTML+ CSS

    加载动画效果 写在前面 在无限的时间的河流里,人生仅仅是微小又微小的波浪.--郭小川 实现效果 实现原理 通过2个伪元素来设置3条颜色边框 通过定位将3个圆弧边框层叠再一起,再通过旋转实现一个圆的效果 ...

  8. 在fragment的onViewCreated里observe livedata的变化的原因

    Fragment.onViewCreated()是在Fragment.onCreateView()函数之后调用的,调用到它时 表明fragment视图层级结构已创建完毕.在onViewCreated( ...

  9. oepncv实现——图像去水印

    功能简介:通过拖动鼠标实现指定区域水印或是斑点的去除. 实现原理:利用opencv鼠标操作setMouseCallback函数框选(左上到右下)需要处理的区域,按下鼠标开始选中,松开鼠标结束,对选中区 ...

  10. Nginx的配置参数中文说明

    Nginx的配置参数中文说明   前言 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行.其特点是占有内存少,并发能力强 ...