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

 我来答
DoramiHe
2018-09-12 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25332 获赞数:59541
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
  • 前言

  •       今天拿到一个传感器信号文件,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 解析后的数据

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式