JSON文件的具体先容,小白零基础轻松相识JSON文件

打印 上一主题 下一主题

主题 1885|帖子 1885|积分 5655

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
目录

   弁言
  1. 文件扩展名:
  2. 使用场景:
  3. 根本布局:
  4. 数据类型:
  5. 示例表明(以游戏开发中将c#文件中的数据转换为JSON文件为例子)
  6.JSON文件的优势
  弁言

   在游戏开发或其他开发使命中,我们经常必要保存数据到当地或在差别系统、平台、应用程序之间进行数据传输。在实际应用中,我们可以使用JSON文件来存储设置信息、游戏进度、用户设置等数据。这些文件可以方便地在差别情况中进行读写,并且由于其简朴、易读的特性,也很适合在网络上传输数据。比如在玩家退出游戏大概存档时,由于数据量不大,我们可以将数据以JSON格式保存到当地文件中。在网络游戏中,我们必要实时更新玩家的数据,玩家数据通常以JSON格式通过客户端发送到服务器,并由服务器处理并通过数据库存储。
  1. 文件扩展名:

   JSON文件作为一种轻量级的文本格式,用于体现布局化数据。JSON 文件通常以 .json 作为文件扩展名,例如 data.json。
  2. 使用场景:

   JSON 文件常用于以下场景:
  

  • 设置文件: 存储应用程序或系统的设置信息。
  • 数据交换: 在差别系统之间传递数据,例如 Web 服务返回的数据。
  • 数据存储: 保存或导出数据,例如日志文件、用户设置、游戏数据等。
  3. 根本布局:

   一个 JSON 文件通常由一个 JSON 对象或一个 JSON 数组组成。JSON 对象是一组无序的键值对,而 JSON 数组是一组有序的值。以下是 JSON 文件的两个根本布局:
  

  • JSON 对象:
    1. //JSON文件
    2. { "name": "John", "age": 30, "city": "New York" }
    复制代码
  •    
     JSON 数组:
    1. //JSON文件
    2. [ "apple", "banana", "orange" ]
    复制代码
  •    
    JSON 答应在对象中嵌套对象,也答应在数组中嵌套数组或对象。例如:
    1. //JSON文件
    2. { "person": { "name": "Alice", "age": 25,
    3. "address": { "city": "Paris", "zipCode": "75001" } },
    4. "fruits": ["apple", "orange", {"type": "banana", "color": "yellow"}] }
    复制代码
  •    
    思量以下 JSON 文件示例:
    1. //JSON文件
    2. { "person": { "name": "Bob", "age": 28, "city": "San Francisco" },
    3. "languages": ["JavaScript", "Python", "Java"] }
    4. //person 是一个包含 name、age 和 city 的 JSON 对象。
    5. //languages 是一个包含三种编程语言的 JSON 数组。
    复制代码
  4. 数据类型:

   JSON 支持以下数据类型:
  

  • 字符串(String): 使用双引号括起来的文本。
  • 数字(Number): 整数或浮点数。
  • 布尔值(Boolean): true 或 false。
  • 数组(Array): 有序的值的列表。
  • 对象(Object): 无序的键值对聚集。
  • null: 体现空值。
  5. 示例表明(以游戏开发中将c#文件中的数据转换为JSON文件为例子)

   

  •  C#示例(这是一个玩家类,有等级、履历、金币属性,将其转化为JSON文件)
    1. using System;
    2. using System.IO;
    3. using UnityEngine;
    4. public class Player
    5. {
    6.     public int Level;
    7.     public int Experience;
    8.     public int Coins;
    9. }
    10. public class SavePlayerData : MonoBehaviour
    11. {
    12.     private void Start()
    13.     {
    14.         // 创建一个玩家实例
    15.         Player player = new Player
    16.         {
    17.             Level = 2,
    18.             Experience = 5,
    19.             Coins = 100
    20.         };
    21.          SavePlayerData();
    22.     }
    23.     //保存玩家数据函数
    24.     private void SavePlayerData()
    25.     {
    26.          // 将玩家数据转换为 JSON 格式的字符串
    27.         string jsonData = JsonUtility.ToJson(player);
    28.         // 设置保存文件的路径
    29.         string filePath = Application.persistentDataPath + "/playerData.json";
    30.         // 将 JSON 字符串保存到文件
    31.         File.WriteAllText(filePath, jsonData);
    32.     }
    33. }
    复制代码
  • 转换的JSON文件为
    1. //JSON文件
    2. {
    3.   "player":{
    4.   "Level": 2,
    5.   "Experience": 5,
    6.   "Coins": 100}
    7. }
    复制代码

  6.JSON文件的优势

   

  •   易读性:下面我用XML文件与JSON文件作体现一个人物信息,JSON文件和XML文件对我们来说都有易读的特性,但是格式上,JSON文件相较于XML文件更简练,冗余代码更少,也比较符合我们平时使用{}分隔的语言习惯。而且对于机器来说,JSON会更易读,我们可以通过索引直接读取值。
    1. //XML文件
    2. <person>
    3.   <name>John Doe</name>
    4.   <age>30</age>
    5.   <address>
    6.     <street>123 Main St</street>
    7.     <city>Anytown</city>
    8.     <zipcode>12345</zipcode>
    9.   </address>
    10.   <email>john.doe@example.com</email>
    11.   <isStudent>false</isStudent>
    12.   <hobbies>
    13.     <hobby>reading</hobby>
    14.     <hobby>coding</hobby>
    15.     <hobby>traveling</hobby>
    16.   </hobbies>
    17. </person>
    复制代码
    1. //JSON文件
    2. {
    3.   "person": {
    4.     "name": "John Doe",
    5.     "age": 30,
    6.     "address": {
    7.       "street": "123 Main St",
    8.       "city": "Anytown",
    9.       "zipcode": "12345"
    10.     },
    11.     "email": "john.doe@example.com",
    12.     "isStudent": false,
    13.     "hobbies": ["reading", "coding", "traveling"]
    14.   }
    15. }
    复制代码
  • 轻量级: JSON 是一种轻量级的格式,相对于其他格式(如XML),它在网络传输和存储中占用较小的空间,有助于提高性能。

  • 跨平台兼容性: JSON 是一种独立于编程语言的格式,险些所有现代编程语言都支持 JSON 的解析和天生。这种跨平台兼容性使得差别系统和应用程序之间更轻易地交换数据。
  • 易于解析: JSON 的语法简朴清晰,易于解析和天生。险些所有编程语言都有内置的 JSON 解析器,使得在应用程序中处理 JSON 数据非常方便。
  • 易于与Web开发集成: 由于JSON最初是为JavaScript设计的,因此它与JavaScript的对象体现法非常相似,使得在Web开发中与JavaScript的交互变得更加轻易。因此在Web开发中我们更加轻易创建JavaScript对象。
    1. var p = {'city':['北京','上海','广州','深圳']};
    2. for(var i=0;i<p.city.length;i++){
    3.         document.write(p.city[i]+"<br/>");
    4. }
    复制代码
   如有错误欢迎进行指正 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

尚未崩坏

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表