精华内容
下载资源
问答
  • 2021-08-05 05:21:40

    方法一

    1.首先编写一个json文件:demo.json

    [

    {

    "name":"张三",

    "sex":"男",

    "email":"zhangsan@123.com"

    },

    {

    "name":"李四",

    "sex":"男",

    "email":"lisi@123.com"

    },

    {

    "name":"王五",

    "sex":"女",

    "email":"wangwu@123.com"

    }

    ]

    2.js读取json文件

    window.onload = function () {

    var url = "demo.json"/*json文件url,本地的就写本地的位置,如果是服务器的就写服务器的路径*/

    var request = new XMLHttpRequest();

    request.open("get", url);/*设置请求方法与路径*/

    request.send(null);/*不发送数据到服务器*/

    request.onload = function () {/*XHR对象获取到返回信息后执行*/

    if (request.status == 200) {/*返回状态为200,即为数据获取成功*/

    var json = JSON.parse(request.responseText);

    for(var i=0;i

    console.log(json[i].name);

    }

    console.log(json);

    }

    }

    }

    方法二

    通过ajax获取json

    var Ajax = function ()

    {

    $.getJSON ("demo.json", function (data)

    {

    $.each (data, function (i, item)

    {

    console.log(item.name);

    });

    });

    }();

    $.ajax({

    url: "demo.json",//json文件位置,文件名

    type: "GET",//请求方式为get

    dataType: "json", //返回数据格式为json

    success: function(data) {//请求成功完成后要执行的方法

    //给info赋值给定义好的变量

    var pageData=data;

    for(var i=0;i

    console.log(pageData[i].name);

    }

    }

    })

    方法三

    工程化开发时(webpack/parcel)等,可以用import导入

    import xx from 'xxx.json'

    //文件后缀可省略,如

    import xx from 'xxx'

    ————————————————

    版权声明:本文为CSDN博主「ClearLoveQ」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

    原文链接:https://blog.csdn.net/ClearLoveQ/article/details/90480207

    更多相关内容
  • HTML文件读取json文件,将文件内容转换为Object并赋值给变量,可以进行索引修改
  • Java读取json文件,并转化为map取值,并附上相关jar包
  • 本文实例为大家分享了Python实现读取json文件到excel表,供大家参考,具体内容如下 一、需求 1、’score.json’ 文件内容: { 1:[小花,99,100,98.5], 2:[小王,90,30.5,95], 3:[小明,67.5,49.6,88] } 2、读取...
  • import json from pyecharts import Pie f = open('pies.json', encoding='gbk') data = json.load(f) print(data) name = data['name'] sales = data['sales'] sales_volume = data['sales_volume'] print(name, ...
  • 利用Python语句读取json文件,并输出相应数据,py文件为代码,out为输出文件夹,json为数据文件所在文件夹
  • 开发过程中经常会遇到json数据的处理,而单独对json数据进行增删改并不方便,尤其是Geojson文件的处理,通过对网络资料的整理总结,下面介绍Java语言方法对json数据进行读取、添加、删除与修改操作。
  • 主要介绍了Python简单读取json文件功能,结合实例形式分析了Python文件读取及json格式数据相关操作技巧,需要的朋友可以参考下
  • 读取json文件需要的jsoncpp库头文件和编译后得到的lib静态库json_vc71_libmt.lib,直接将该压缩包文件加到代码文件中即可使用。
  • 读取json文件切割图集

    2018-09-20 22:37:39
    读取json文件切割图集,支持按目录批量裁剪,保留命名
  • # data.json 文件同目录下 [ { "id": 1, "username": "zhangshan", "password": "123qwe", "lock": false }, { "id": 2, "username": "lisi", "password": "123qwe", "lock": false }, { "id": 3, ...
  • 主要介绍了vs中 C#项目读取JSON配置文件的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
  • 前言:在与传统的asp.net MVC...步入正题,下面来说一下如何读取Json配置文件中的参数。 第一种:使用IConfiguration接口 我们先在appsettings.json中配置好数据库连接字符串,然后读取它 { Connection: { dbContent:
  • 今天小编就为大家分享一篇在vue中读取本地Json文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 集群环境如何读取JSON文件

    千次阅读 2022-03-13 17:54:58
    大数据 udf spark java json

    1 需求

    在TDH集群环境获取jar包目录下dict.json文件,调用udf函数getDictName( ), 传入两个入参,分别是一级编码和二级编码(srcCode及srcSbuCode),最终返回值为"字典名称"(dictName)。
    比如函数入参传入‘1001’和‘0’,返回值为“董事长”,入参传入‘1001’和‘3’,返回值为“财务负责人”。

    2 思路分析

    2.1 现有方案

    对于解析字典的需求,现有做法是在大数据集群hdfs指定路径上传xml文件,通过调用udf函数,在udf函数逻辑中解析xml文件,获取字典名称。

    该做法可以正常实现要求,但是也存在两个劣势:1) 需要在hdfs指定目录上传xml文件,否则无法读取到文件;2) 函数入参中除传入两个入参外,同时要求传入xml文件路径。如果路径错误或者没有传入,就存在执行失败或者无法解析出正确字典名称的问题。

    2.2 优化方案

    针对现有的解决方案,如何避免以上两个问题?是否存在优化方案,可以做到不上传xml文件到hdfs目录,同时函数只传入两个入参(srcCode及srcSbuCode),在满足以上前提下,可以正常获取返回值dictName。

    需求已经明确了,接下来就是考虑如何实现需求。通过分析发现,可以通过以下步骤实现:
    1)编写json文件,文件名称为“dict.json”(该文件需要满足json文件格式),上传至java工程项目中resources目录下;
    2)在udf函数getDictName( )代码逻辑中编写解析json文件逻辑;
    3)项目打包后上传jar包至集群指定的自定义函数目录(非hdfs路径);
    4)在spark on yarn 模式下,通过sql调用udf函数getDictName( srcCode,srcSbuCode),传入两个入参后保证在集群环境下可以获取返回值dictName。

    3 实现方案

    3.1 编写Json文件

    附:json文件格式

    {
    "1001":{
          "0":"董事长",
          "1":"控制人",
          "2":"主要负责人",
          "3":"财务负责人",
          "4":"监事长"
        },
    "1002":{
          "0":"证件地址",
          "1":"联系地址",
          "2":"家庭地址",
          "3":"单位地址",
          "4":"户籍地址",
          "5":"出生地址"
        },
        ......
    }
    

    3.2 编写udf函数

    3.2.1 编写函数工具类

    package com.ccsg.udf.utils;
    
    /**
     * @author allan
     * @version 1.0
     * @date 2022/3/5 21:43
     * @desc 读取文件工具类
     */
    
    import java.io.*;
    
    public class FileUtil {
    
        /**
         * 读取文件文本内容
         *
         * @param inputStream
         * @return 返回字符串
         */
        public static String readFile(InputStream inputStream) throws IOException {
            Reader reader = new InputStreamReader(inputStream, "utf-8");
            int ch = 0;
            StringBuffer sb = new StringBuffer();
            while ((ch = reader.read()) != -1) {
                sb.append((char) ch);
            }
            reader.close();
            return sb.toString();
    
        }
    
    }
    
    

    3.2.2 编写函数核心逻辑

    package com.ccsg.udf.function.udf;
    
    import com.alibaba.fastjson.JSON;
    import com.ccsg.udf.utils.FileUtil;
    import org.apache.commons.lang.StringUtils;
    import org.apache.spark.sql.api.java.UDF2;
    
    import java.io.InputStream;
    import java.util.Map;
    
    /**
     * @author allan
     * @version 1.0
     * @date 2022/3/5 21:43
     * @desc 字典转换
     * @parm srcCode 及 srcSubCode
     * @return dictName
     */
    public class GetDictName implements UDF2<String, String, String> {
        private static final String DEFAULT_DICT_NAME = " ";
    
        public String call(String srcCode, String srcSubCode) throws Exception {
            // 获取文件所在包路径,调用工具类FileUtil中方法readFile()读取json文件
            InputStream inputStream = UDFGetDictName.class.getClassLoader().getResourceAsStream("dict.json");
            String jsonStr = FileUtil.readFile(inputStream);
    
            // 定义返回结果
            String dictName = null;
    
            // 数据结构为嵌套Map结构: Map<srcCode,Map<srcSubCode,dictName>>
            if (StringUtils.isNotBlank(jsonStr) && StringUtils.isNotBlank(srcCode) && StringUtils.isNotBlank(srcSubCode)) {
                // 解析json字符串,获取最终返回结果dictName
                Map<String, Object> jsonMap = (Map) JSON.parse(jsonStr);
                Map<String, String> destMap = (Map<String, String>) jsonMap.get(StringUtils.trim(srcCode));
    
                if (null != jsonMap && null != destMap
                        && jsonMap.containsKey(StringUtils.trim(srcCode)) 
                        && destMap.containsKey(StringUtils.trim(srcSubCode))) {
                    dictName = destMap.get(StringUtils.trim(srcSubCode));
                    return dictName;
                } else {
                    return DEFAULT_DICT_NAME;
                }
            }
    
            return DEFAULT_DICT_NAME;
        }
    
    
    }
    
    

    说明:
    1)建议类中获取文件所在包路径方式:类名.class.getClassLoader().getResourceAsStream(“dict.json”);该方式支持本地和集群环境下正常找到json文件所在目录;
    2)调用Json转map方式进行逻辑处理: Map<String, Object> jsonMap = (Map) JSON.parse(jsonStr)
    3)已验证以下两种方式支持在本地环境找到文件所在目录,不支持集群环境,所以不作为优先考虑方式
    方式1:String fileRelativePath = Thread.currentThread().getContextClassLoader().getResource(“dict.json”).getFile();
    方式2:UDFGetDictName.class.getResource("/") + “dict.json”;
    4)充分考虑数据场景,考虑代码健壮性,对可能传入错误参数 或者传入空值 进行优化处理,避免运行时报空指针异常;
    5)以上udf函数编写使用spark中自定义函数框架,通过实现UFD2接口,重写call()方式处理,两个入参及返回值都为String类型。

    3.2.3 本地环境main()方法自测

        public static void main(String[] args) throws Exception {
            GetDictName gdn = new GetDictName();
            // 1 正确场景:" 1001", "0"
            String result1 = gdn.call("1001", "0");
            
            // 2 入参为空场景
            String result2 = gdn.call(" ", " ");
            String result3 = gdn.call("", " ");
            String result4 = gdn.call(null, " ");
            String result5 = gdn.call("1001", " ");
            
            // 3 错误数据 "1100", "18"  / "1100", "1" / "1001", "7"
            String result6 = gdn.call("1100", "18");
            String result7 = gdn.call("1100", "1");
            String result8 = gdn.call("1001", "7");
    
            System.out.println(result1);
            System.out.println(result2);
            System.out.println(result3);
            System.out.println(result4);
            System.out.println(result5);
            System.out.println(result6);
            System.out.println(result7);
            System.out.println(result8);
    
        }
    

    返回结果:

    只有result1存在返回值“董事长”,其他都返回默认值(空格)

    3.3 打包注意事项

    3.3.1 目录结构图

    在这里插入图片描述
    说明:在resources目录下上传指定Json文件,如idea中该目录不存在则新建即可。

    3.3.2 pom.xml新增内容

                <resource>
                    <directory>src/main/resources</directory>
                    <includes>
                        <include>**/*.xml</include>
                        <include>**/*.properties</include>
                        <include>**/*.json</include>
                    </includes>
                    <filtering>true</filtering>
                </resource>
    

    3.3.3 执行maven install效果

    在这里插入图片描述
    说明:可以看到打包后json文件在根目录下

    3.4 TDH集群环境验证

    1)上传jar包到集群指定自定义函数目录

    2)sql中调用函数

    select t.id_kind, GetDictName('1001',t.id_kind) as dict_name from person t where t.id_kind in ('0','1','2');
    

    返回值:

    id_kind 	dict_name 
    0       	董事长
    1			控制人
    2			主要负责人	
    

    说明:项目中使用类名作为函数名称

    4 回顾总结

    1)充分考虑需求,结合Json文件格式和业务逻辑,合理设计实优化方案;
    2)考虑使用udf函数,保证集群环境下找到Json文件目录并读取内容,重点验证获取路径方式,即优先考虑方式:类名.class.getClassLoader().getResourceAsStream(“dict.json”);
    3)实现业务逻辑时充分考虑各种数据场景,增强代码健壮性;
    4)本需求涉及IO流、反射、udf函数专业知识,需要对java及大数据基础有深入了解。

    展开全文
  • 如何使用Node.js读取JSON文件

    千次阅读 2021-08-11 03:48:24
    介绍本教程将帮助您使用Node.js阅读JSON文件内容。本教程使用jsonfile模块的readFile和readFileSync函数。要求第一个要求是在系统上安装node.js和npm。如果没有安装使用下面的链接。jsonfile NPM模块。 所以,首先你...

    介绍

    本教程将帮助您使用Node.js阅读JSON文件内容。本教程使用jsonfile模块的readFile和readFileSync函数。

    要求

    第一个要求是在系统上安装node.js和npm。如果没有安装使用下面的链接。

    jsonfile NPM模块。 所以,首先你需要在系统上安装jsonfile模块

    $ npm install jsonfile --save

    现在,我创建一个dummy json文件employee.json。你可以使用自己的json文件。

    文件名:employee.json

    [

    {

    "emp_id" : "101",

    "emp_name" : "Mike",

    "emp_addr" : "123 California, USA",

    "designation" : "Editor"

    },

    {

    "emp_id" : "102",

    "emp_name" : "Jacob",

    "emp_addr" : "456 Log Angelis, USA",

    "designation" : "Chief Editor"

    }

    ]

    使用Nodejs读取JSON文件 - 选项#1

    在上面的步骤中,我创建了一个示例JSON文件。现在创建ReadJsonFile.js并添加以下内容。您需要使用JSON文件名更改employee.json。

    文件名:ReadJsonFile.js

    var jsonFile = require('jsonfile')

    var fileName = 'employee.json'

    jsonFile.readFile(fileName, function(err, jsonData) {

    if (err) throw err;

    for (var i = 0; i

    Now run the nodejs script using following command.

    $ node ReadJsonFile.js

    Emp ID: 101

    Emp Name: Mike

    Emp Address: 123 California, USA

    Designation: Editor

    ----------------------------------

    Emp ID: 102

    Emp Name: Jacob

    Emp Address: 456 Log Angelis, USA

    Designation: Chief Editor

    ----------------------------------

    Read JSON File with Nodejs - Option #2

    Alternatively, you can use readFileSync function to read json file content. Create a ReadJsonFileSync.js file with following content. You can read here about the differences of readFile and readFileSync function in Jode.js.

    Filename: ReadJsonFileSync.js

    var jsonFile = require('jsonfile')

    var fileName = 'employee.json'

    var jsonData = jsonFile.readFileSync(fileName);

    for (var i = 0; i

    Now run the nodejs script using following command.

    $ node ReadJsonFileSync.js

    Emp ID: 101

    Emp Name: Mike

    Emp Address: 123 California, USA

    Designation: Editor

    ----------------------------------

    Emp ID: 102

    Emp Name: Jacob

    Emp Address: 456 Log Angelis, USA

    Designation: Chief Editor

    ----------------------------------

    现在使用以下命令运行nodejs脚本。

    $ node ReadJsonFile.js

    Emp ID: 101

    Emp Name: Mike

    Emp Address: 123 California, USA

    Designation: Editor

    ----------------------------------

    Emp ID: 102

    Emp Name: Jacob

    Emp Address: 456 Log Angelis, USA

    Designation: Chief Editor

    ----------------------------------

    使用Nodejs读取JSON文件 - 选项#2

    另外,您也可以使用readFileSync函数读取JSON文件的内容。 创建具有以下内容的ReadJsonFileSync.js文件。 你可以在这里阅读有关ReadFile和readFileSync功能的Jode.js.的差异

    文件名:ReadJsonFileSync.js

    var jsonFile = require('jsonfile')

    var fileName = 'employee.json'

    var jsonData = jsonFile.readFileSync(fileName);

    for (var i = 0; i

    Now run the nodejs script using following command.

    $ node ReadJsonFileSync.js

    Emp ID: 101

    Emp Name: Mike

    Emp Address: 123 California, USA

    Designation: Editor

    ----------------------------------

    Emp ID: 102

    Emp Name: Jacob

    Emp Address: 456 Log Angelis, USA

    Designation: Chief Editor

    ----------------------------------

    现在使用以下命令运行nodejs脚本。

    $ node ReadJsonFileSync.js

    Emp ID: 101

    Emp Name: Mike

    Emp Address: 123 California, USA

    Designation: Editor

    ----------------------------------

    Emp ID: 102

    Emp Name: Jacob

    Emp Address: 456 Log Angelis, USA

    Designation: Chief Editor

    ----------------------------------

    展开全文
  • python 读取json文件

    千次阅读 2022-04-18 16:42:59
    import json json_data = """{ "favourite":{ "bkmrk":{ "id1490843709594066":{ "guid":"904eff52277f403b89f6410fe2758646.11", "lcate":"1" }, "id1490843712805183":{ "guid":"58457f60eca6402
    import json
    
    json_data = """{
       "favourite":{
          "bkmrk":{
             "id1490843709594066":{
                "guid":"904eff52277f403b89f6410fe2758646.11",
                "lcate":"1"
             },
             "id1490843712805183":{
                "guid":"58457f60eca64025bc43a978f9c98345.16",
                "lcate":"2"
             },
             "id149084371467327":{
                "guid":"a0f907f9dc8b40f689b083f3eba7228b.16",
                "lcate":"3"
             },
             "id1490843716295393":{
                "guid":"eb75d929455e468bb712e7bc2025d11a.16",
                "lcate":"4"
             }
          }
       }
    }"""
    
    data = json.loads(json_data)
    for v in data['favourite']['bkmrk'].values():
        print("%s;%s" % (v['lcate'],  v['guid']))
    

    输出

    1;904eff52277f403b89f6410fe2758646.11
    2;58457f60eca64025bc43a978f9c98345.16
    3;a0f907f9dc8b40f689b083f3eba7228b.16
    4;eb75d929455e468bb712e7bc2025d11a.16
    

    取出特定数据

    import json
    with open("./1.json",'r',encoding='utf8') as fp:
        json_data = json.load(fp)
        print('这是文件中的json数据:',json_data)
        print('这是读取到文件数据的数据类型:', type(json_data))
        for v in json_data['tianqi'].values():
            print(v)
            # 取出特定数据
            print("%s,%s"%(v['filename'],v['variable']))
    
    

    输出

    {'filename': 'at0101.07422', 'variable': '气温', 'Highest_temp': '最高气温', 'Lowest_temp': '最低气温'}
    at0101.07422,气温
    {'filename': 'bp0101.07422', 'variable': '气压', 'Highest_pre': '最高气压', 'Lowest_pre': '最低气压'}
    bp0101.07422,气压
    {'filename': 'hu0101.07422', 'variable': '相对湿度', 'Highest_h': '最大相对湿度', 'Lowest_h': '最低相对湿度'}
    hu0101.07422,相对湿度
    
    展开全文
  • 主要介绍了python读取json文件并将数据插入到mongodb的方法,实例分析了Python操作json及mongodb数据库的技巧,需要的朋友可以参考下
  • springBoot读取json文件

    千次阅读 2022-04-08 14:31:47
    代码如下 import org.junit.Test; import java.io.*; public class JsonTest { ... public void testMethod() { ... String path = "a.json"; try { br = new BufferedReader(new InputStreamReader(Jso
  • unity读取json文件

    千次阅读 2022-04-11 11:54:30
    第一次读取json文件,使用了自带的jsonUtility和LitJson两个方法,最终选择了Litjson。 方法: 第一步:在streamingassets文件夹下创建json文件,可以通过在线校验网站校验格式是否正确(一般这种网站还能直接生成...
  • spark读取json文件

    千次阅读 2021-12-21 14:19:37
    def main(args: Array[String]): Unit = { //创建SparkSession对象 val spark: SparkSession = SparkSession .builder() .appName("test01") .master("local[*]") .getOrCreate() //读取json文件 val df: DataFrame...
  • java读取json文件内容详解

    千次阅读 2021-03-03 11:56:50
    之前给大家介绍了一下java读取txt文件内容,下面要给大家介绍的就是java读取json文件内容,一起来了解一下吧。1、java读取json文件下面是具体的思路:首先是获取文件-获取文件内容-转换成json对象-读取json对象下面...
  • C# 读取数组Json文件

    2022-03-22 22:22:06
    C# 读取数组Json文件

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 279,039
精华内容 111,615
关键字:

怎么读取json文件