python3 如何把一个txt文件转换成json数据,txt包含4个字段
2018-09-12 · 知道合伙人互联网行家
前言
- 今天拿到一个传感器信号文件,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 解析后的数据