Molecule file conversion with Molconverter

Molconverter is a command line program in Marvin Suite and JChem that converts between various file types.


molconvert [options] outformat[:exportoptions] [files...]

The outformat stands for one of the supported formats.

Alternatively , use

molconvert [options] query-encoding [files...]

to query the automatically detected encodings of the specified molecule files.

From files having doc, docx, ppt, pptx, xls, xls, odt, pdf, xml, html or txt format, Molconvert is able to recognize the name of compounds and convert it to any of the above mentioned output formats.


Molconvert options can be specified in the format string. The format descriptor and the options are separated by a colon, the options by commas. molconvert jpeg:w100,Q95,#ffff00 nice.mol -o nice.jpg

(creates 100x100 JPEG image on yellow background, with 95% quality)

-o file

Write output to specified file instead of standard output


Produce multiple output files

-e charset

Set the input character encoding. The encoding must be supported by Java.

-e [in ]..[ out]

Set the input (in) and/or output (out) character encodings. Examples: UTF-8, ASCII, Cp1250 (Windows Eastern European), Cp1252 (Windows Latin 1), ms932 (Windows Japanese).

-s string

Read molecule from specified SMILES, SMARTS or peptide string (try to recognize its format)

-s string { format : options }

Read molecule from the string in the specified format (can be omitted), using the specified importoptions (can be omitted)

-f string

Specify the import format and options

--peptide string

Read molecule from specified peptide string


Continue with next molecule on error (default: exit on error)


Remove explicit H atoms

-I <range>

process input molecules with molecule index (1-based) falling into the specified range (e.g. 5-8,15 refers to molecules 5,6,7,8,15)


fuse input molecules and output the union

-R <file>[:<range>]

fuse fragments to input molecule(s) from file with specified mol index range range syntax: "-5,10-20,25,26,38-" (e.g. -R frags.mrv:20-)

-R<i> <file>[:<range>]

fuse R<i> definition members to input molecule(s) from file in specified index range (e.g. -R1 rdef1.mrv:5-8,19)

-R<i>:<1|2> <file>[:<range>]

fuse R<i> definition members to input molecule(s) from file in specified index range, filter molecules having 1 (2, resp.) attachment points (e.g. -R1:2 rdef1.mrv:-3,8-10)


Remove small fragments, keep the largest

-c"f1 OP value&f2 OP value..."

Filtering by the values of fields in the case of SDF import.
OP may be: =,<,>,<=,>=


Convert molecule type fields to separate records.




Very verbose (print stack trace at error)

-2 [ : options] [ : F<i1><i2>...,<iN>]

Calculate 2D coordinates Options for coordinate calculation.
Performs partial clean with fixed atom coordinates for atoms <i1><i2>...,<iN> (1-based indexes) if the Fparameter is specified.

-3 [ : options]

Calculate 3D coordinates
Options for coordinate calculation.


Help on options for 3D calculations. Detailed list on Clean 3d Options

Import options can be specified between braces, in one of the following forms:



to merge molecules into one that contains multiple atom sets


to skip automatic format recognition



You can also pass options to JAVA VM when you run the application from command line.

Options for file formats: