Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 偷看下一排_Java_Pentaho - Fatal编程技术网

Java 偷看下一排

Java 偷看下一排,java,pentaho,Java,Pentaho,我想在PDI的帮助下从xml中删除一些标记。我只需要一个mime的每种产品类型。我想我可以为它编写一个用户定义的Java类,但是当我在第一个节点时,我需要查看下一行。我的xml如下所示: <MIME_INFO> <MIME> <MIME_TYPE>image/tiff</MIME_TYPE> <MIME_SOURCE>P_I2

我想在PDI的帮助下从xml中删除一些标记。我只需要一个mime的每种产品类型。我想我可以为它编写一个用户定义的Java类,但是当我在第一个节点时,我需要查看下一行。我的xml如下所示:

<MIME_INFO>
                <MIME>
                    <MIME_TYPE>image/tiff</MIME_TYPE>
                    <MIME_SOURCE>P_I202_XX_06499E600600.TIF</MIME_SOURCE>
                    <MIME_PURPOSE>detail</MIME_PURPOSE>
                </MIME>
                <MIME>
                    <MIME_TYPE>image/jpeg</MIME_TYPE>
                    <MIME_SOURCE>P_I202_XX_06499I300300.JPG</MIME_SOURCE>
                    <MIME_PURPOSE>normal</MIME_PURPOSE>
                </MIME>
                <MIME>
                    <MIME_TYPE>image/jpeg</MIME_TYPE>
                    <MIME_SOURCE>P_I202_XX_00482I300300.JPG</MIME_SOURCE>
                    <MIME_PURPOSE>normal</MIME_PURPOSE>
                </MIME>
            </MIME_INFO> 

图像/tiff
P_I202_XX_06499E600600.TIF
细节
图像/jpeg
P_I202_XX_06499I300300.JPG
正常的
图像/jpeg
P_I202_XX_00482I300300.JPG
正常的

我使用主UDJC函数逐行处理行,但是当我在行中时,我必须知道mime的类型,才能知道是否必须跳过它。我怎样才能偷看下一排?类似于getNextRow()或getRow(1)的内容。

您需要使用类似于DOM解析器的内容来解析XML文件。 您使用的方法可能很有效,但这不是一个好方法。 您可以参考下面的链接来读取xml文件,然后可以相应地执行操作:


我找到了解决办法。。。只需再次调用getRow,但要将第一行存储在临时变量中。在找出第二行中的内容后,我可以决定是否要处理第一行(如果我的行包含MIME节点,我一步处理了2行)