将日志文件转换成标准 csv

log 文件有 3 列,分隔符是空格。

2022-06-01 11:00:00 wt.nm=aa&wt.ti=t1&

2022-06-02 12:00:00 wt.nm=ab&wt.ti=t2&

2022-06-03 10:00:00 wt.nm=ac&wt.ti=t3&

用 Java 将 log 文件转为带标题的 csv 文件,需要保留前 2 列,将第 3 列按 "&" 拆分,取前 2 部分的等号右边的字符串,形成新的第 3 列和第 4 列:

date,time,name,title

2022-06-01,11:00:00,aa,t1

2022-06-02,12:00:00,ab,t2

2022-06-03,10:00:00,ac,t3

SPL脚本:

A
1=file("data.log").import(;," ")
2=A1.new(#1:date,#2:time,(t=#3.split("&").(~.split("=")))(1)(2):name,t(2)(2):title)
3>file("result.csv").export@tc(A2)

A1:将文本文件读为二维表,分隔符为空格。

A2:用计算列新建二维表,#1 表示第 1 列,t(1)(2) 表示序列的第 1 个成员的第 2 个子成员。

A3:将二维表写入文本文件,@c 表示分隔符为逗号,@t 表示带标题。

Java 集成 SPL 可参考 Java 如何调用 SPL 脚本

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值