python3 如何把一个txt文件转换成json数据,txt包含4个字段

如题所述

    前言

          今天拿到一个传感器信号文件,txt格式,有十几行,每行是一组json格式数据,有两个字段(键):'series'和'id',共4个json对象,id从'901'到'904',其中每组的series是是个数组,数组中包含512个json对象,每个json对象含有两个字段:'time'和'value'。

    图1 原始文件

    解析

    MATLAB本身无直接解析json数据的函数,我从MATLAB官网论坛File Exchange上找到两个解析json的第三方函数:json4mat和parse_json。这两个函数均能成功解析json格式数据到MATLAB支持的cell和struct类型数据。

    下载地址:http://cn.mathworks.com/matlabcentral/fileexchange/?search_submit=fileexchange&query=json&term=json

    发现json4mat比parse_json的解析速度更快。

    示例

    以json4mat为例,

    3     %% 解析    

    4     clear;clc;    

    5     file = 'C:\Users\Administrator\Desktop\06\zlw\AccData-18-29-43.txt';    

    6     A = importdata(file);    

    7     M = [];    

    8     for i = 1:numel(A)    

    9         M=[M;json2mat(A{i})];    

    10     end %方法1,json2mat函数    

    11          

    12     % for i = 1:numel(A)    

    13     %     tmp = parse_json(A{i});    

    14     %     M = [M;tmp{1}];    

    15     % end %方法2,parse_json函数    

    结果

    解析后得到的16*4的cell格式数据,里面每个元素是结构体struct数据。每个结构体有两个字段:series和id。可供MATLAB进行处理。

    图2 解析后的数据

温馨提示:答案为网友推荐,仅供参考
相似回答