SplitMultiMolecules.java The MolConverter helper class converts molecules between various file formats.
The detailed documentation about the supported file formats can be found in the Molecule File Conversion document.
Here we present some examples:
Simple SDfile to SMILES conversion:
MolConverter.Builder mcbld = new MolConverter.Builder();
mcbld.addInput("examples/plugin-api/example_mols.sdf", "");
mcbld.setOutput("out.smiles", "smiles");
mcbld.setOutputFlags(MolExporter.TEXT);
MolConverter mc = mcbld.build();
while(mc.convert());
mc.close();
For a complete source code, please see MoleculeConverter.java.
To split a multi-molecule input file into multiple Molfiles named out1.mol, out2.mol etc., use the following settings:
MolConverter.Builder mcbld = new MolConverter.Builder();
mcbld.addInput("examples/plugin-api/example_mols.sdf", "");
mcbld.setOutput("out.mol", "mol");
mcbld.setOutputFlags(MolExporter.TEXT|MolExporter.MULTIPLE);
MolConverter mc = mcbld.build();
while(mc.convert());
mc.close();
For a complete source code, please see SplitMultiMolecules.java.
To merge more molecule input files into a multi-molecule file, use the following settings:
MolConverter.Builder mcbld = new MolConverter.Builder();
mcbld.addInput("in1.mol", "");
mcbld.addInput("in2.mol", "");
mcbld.addInput("in3.mol", "");
mcbld.setOutput("out.sdf", "sdf");
mcbld.setOutputFlags( MolExporter.TEXT );
MolConverter mc = mcbld.build();
while(mc.convert());
mc.close();
For a complete source code, please see MergeMultiMolecules.java.