
How do we convert a flat file into XML without complicating the process.
11111111111111111111111111111 +1X1X1X1X1X SSSSSS - ABC Primary
22222222222222222222222222222 +2Y2Y2Y2Y2Y SSSSSS - ABC Primary
33333333333333333333333333333 +2Y2Y2Y2Y2Y SSSSSS - ABC Primary
<RECORDS>
<RECORD>
<node1>11111111111111111111111111111</node1>
<node2>+1X1X1X1X1X</node2>
<node3>SSSSSS - ABC Primary</node3>
</RECORD>
<RECORD>
<node1>22222222222222222222222222222</node1>
<node2>+2Y2Y2Y2Y2Y</node2>
<node3>SSSSSS - ABC Primary</node3>
</RECORD>
<RECORD>
<node1>33333333333333333333333333333</node1>
<node2>+2Y2Y2Y2Y2Y</node2>
<node3>SSSSSS - ABC Primary</node3>
</RECORD>
</RECORDS>
import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;
import java.io.File
import groovy.xml.MarkupBuilder
def Message processData(Message message) {
//Body
def body = message.getBody(java.lang.String)as String;
def varStringWriter = new StringWriter();
def varXMLBuilder = new MarkupBuilder(varStringWriter);
String newItem ;
body.eachLine{
line -> newItem = line ;
String newItem1 = newItem.substring(0,29).trim();
String newItem2 = newItem.substring(30,47).trim();
String newItem3 = newItem.substring(52,72).trim();
varXMLBuilder.RECORD{
node1(newItem1);
node2(newItem2);
node3(newItem3);
}
}
def xml = varStringWriter.toString();
xml="<RECORDS>"+xml+"</RECORDS>" ;
message.setBody(xml);
return message;
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
10 | |
7 | |
6 | |
4 | |
3 | |
3 | |
3 | |
3 | |
3 | |
3 |