kettle 流方式处理XML

fileInputStream = new java.io.FileInputStream(filename);
contentBytes = Packages.org.pentaho.di.core.Const.createByteArray(fileInputStream.available());
fileInputStream.read(contentBytes);
fileInputStream.close();

var contentString = new java.lang.String(contentBytes);
contentString = contentString.replaceFirst("<\\?xml[^>]*\\?>\\s*", "");

var contentXML = new XML(contentString);

level3ID2Values = contentXML.levelTwo.level3.(@id == "2").@value;

var level3ID2Value = "";
for each (var value in level3ID2Values)
{
    level3ID2Value = value;
    newRow = createRowCopy(getOutputRowMeta().size());
    newRow[getInputRowMeta().size()] = java.lang.Double.valueOf(level3ID2Value);
    putRow(newRow);
}

// Don't output the input row.
trans_Status = SKIP_TRANSFORMATION;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容