Based on the preceding scenario, this scenario saves the filtered data to a local file using output stream.
Drop tJava from the Palette to the design workspace.
Connect tJava to tFileInputDelimited using a Trigger > On Subjob OK connection.
Double-click tJava to open its Basic settings view.
In the Code area, type in the following command:
new java.io.File("C:/myFolder").mkdirs(); globalMap.put("out_file",new java.io.FileOutputStream("C:/myFolder/customerselection.txt",false));
In this scenario, the command we use in the Code area of tJava will create a new folder C:/myFolder where the output file customerselection.txt will be saved. You can customize the command in accordance with actual practice.
Double-click tFileOutputDelimited to open its Basic settings view.
Select Use Output Stream check box to enable the Output Stream field in which you can define the output stream using command.
Fill in the Output Stream field with following command:
You can customize the command in the Output Stream field by pressing CTRL+SPACE to select built-in command from the list or type in the command into the field manually in accordance with actual practice. In this scenario, the command we use in the Output Stream field will call the
java.io.OutputStreamclass to output the filtered data stream to a local file which is defined in the Code area of tJava in this scenario.
Click Sync columns to retrieve the schema defined in the preceding component.
Leave rest of the components as they were in the previous scenario.
Press Ctrl+S to save your Job.
Press F6 or click Run on the Run tab to execute the Job.
The three specified columns Id, CustomerName and CustomerAddress are output in the defined output file.
For an example of how to use dynamic schemas with tFileOutputDelimited, see Scenario 4: Writing dynamic columns from a MySQL database to an output file.