on ‎2007 Jul 04 6:10 AM
Hi SDNers,
My requirement is File - XI - R/3 (IDOC). Before processing the file, it should be sorted out based on a particular field.
Eg. The input file may have this pattern. I need to sort the file based on second field.
D,5601,Jai,Caritor
D,5000,Raj,Caritor
D,7000,Albert,Caritor
Records after sorting
D,5000,Raj,Caritor
D,5601,Jai,Caritor
D,7000,Albert,Caritor
I tried the following way. Read the whole record as a node, so there are 3 nodes for the above example. With in adapter module, retrieve all records and based on the second field sort and then construct the XML with each record containing all 4 fields. I am using DOM parser for this.
Issue: My actual input file has 27 fields and the size of the file is expected around 2 to 20 MB. It is really diffucult to construct the output XML. Is there any other alternative or a better way to handle such scenario?
Share your ideas.
Thank You.
Regards,
Jai Shankar
Request clarification before answering.
one issue i definately see here is you are using DOM..cant imagine a 20 MB xml being loaded into DOM.
I would suggest you a change in your approach using SAX...load the contents of your file into a dynamically growing datastructure like vectors...and also put the key field into another datastructure which then you could sort easily...rearrange / copy from the original data strcture to a new datastructure with your own sorting logic which may be looking up for an object with perticular field value(key value)..
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 13 | |
| 9 | |
| 7 | |
| 5 | |
| 4 | |
| 3 | |
| 2 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.