分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

Kettle 使用Json输入

发布时间:2023-09-06 01:39责任编辑:苏小强关键词:暂无标签
 import java.math.BigDecimal; private static final String JD="jd"; private static final String WD="wd"; public boolean processRow(StepMetaInterface smi, StepDataInterface sdi) throws KettleException{ ???????if(first) { ???????????first = false; ???????} ???????Object[] r = getRow(); ???????if (r == null) { ???????????setOutputDone(); ???????????return false; ???????} ???????//维度 ???????String wdstr = get(Fields.In, WD).getString(r); ???????//经度 ???????String jdstr = get(Fields.In, JD).getString(r); ???????if(!isArray(wdstr)||!isArray(jdstr)){ ??????????return true; ???????} ???????get(Fields.Out, WD).setValue(r, getCovNewVlaue(wdstr)); ???????get(Fields.Out, JD).setValue(r, getCovNewVlaue(jdstr)); ???????putRow(data.outputRowMeta, r); ???????return true; ?} private double getCovNewVlaue(String dustr) { ???????String replace = ?dustr.replace("N", "").replace("E", ""); ???????String[] duArray = replace.split(" "); ???????double duValue = Double.parseDouble(duArray[0]); ???????double minuteValue = Double.parseDouble(duArray[1]); ???????double secondValue = Double.parseDouble(duArray[2]); ???????BigDecimal minute = BigDecimal.valueOf(minuteValue).divide(BigDecimal.valueOf(60), 10, ???????????????BigDecimal.ROUND_HALF_DOWN); ???????BigDecimal second = BigDecimal.valueOf(secondValue).divide(BigDecimal.valueOf(3600), 10, ???????????????BigDecimal.ROUND_HALF_DOWN); ???????BigDecimal newVlaue = BigDecimal.valueOf(duValue).add(minute).add(second); ???????return newVlaue.doubleValue(); ???} private boolean isArray(String dustr){ ???????return dustr.split(" ").length==1?false:true; }

Kettle 使用Json输入

原文地址:https://www.cnblogs.com/justuntil/p/8349628.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved