public class IteratingMDLReader extends DefaultIteratingChemObjectReader<IAtomContainer> implements IChemObjectIOListener
MDLV2000Reader or
MDLV3000Reader reader; it does not work
for SDF files with MDL formats prior to the V2000 format.
Example use:
File sdfFile = new File("../zinc-structures/ZINC_subset3_3D_charged_wH_maxmin1000.sdf");
IteratingMDLReader reader = new IteratingMDLReader(
new FileInputStream(sdfFile), DefaultChemObjectBuilder.getInstance()
);
while (reader.hasNext()) {
IMolecule molecule = (IMolecule)reader.next();
}
MDLV2000Reader,
MDLV3000ReaderIChemObjectReader.Mode| Constructor and Description |
|---|
IteratingMDLReader(InputStream in,
IChemObjectBuilder builder)
Constructs a new IteratingMDLReader that can read Molecule from a given InputStream.
|
IteratingMDLReader(InputStream in,
IChemObjectBuilder builder,
boolean skip)
Constructs a new IteratingMDLReader that can read Molecule from a given a
InputStream.
|
IteratingMDLReader(Reader in,
IChemObjectBuilder builder)
Constructs a new IteratingMDLReader that can read Molecule from a given Reader.
|
IteratingMDLReader(Reader in,
IChemObjectBuilder builder,
boolean skip)
Constructs a new IteratingMDLReader that can read Molecule from a given a
Reader.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Closes this IChemObjectIO's resources.
|
void |
customizeJob() |
IResourceFormat |
getFormat()
Returns the
IResourceFormat class for this IO class. |
IOSetting[] |
getIOSettings()
Returns an array of
IOSettings defined by this IChemObjectIO class. |
boolean |
hasNext()
Returns true if another IMolecule can be read.
|
IAtomContainer |
next()
Returns the next IMolecule.
|
void |
processIOSettingQuestion(IOSetting setting)
Prompted when the IO filter needs information to process the
file.
|
void |
remove()
File IO generally does not support removing of entries.
|
void |
setReader(InputStream reader)
Sets the InputStream from which this ChemObjectReader should read
the contents.
|
void |
setReader(Reader reader)
Sets the Reader from which this ChemObjectReader should read
the contents.
|
void |
setSkip(boolean skip)
Indicate whether the reader should skip over SDF records
that cause problems.
|
accepts, addChemObjectIOListener, handleError, handleError, handleError, handleError, removeChemObjectIOListener, setErrorHandler, setReaderModepublic IteratingMDLReader(Reader in, IChemObjectBuilder builder)
in - The Reader to read frombuilder - The builderpublic IteratingMDLReader(InputStream in, IChemObjectBuilder builder)
in - The InputStream to read frombuilder - The builderpublic IteratingMDLReader(InputStream in, IChemObjectBuilder builder, boolean skip)
in - the InputStream to read frombuilder - builder to useskip - whether to skip null moleculespublic IteratingMDLReader(Reader in, IChemObjectBuilder builder, boolean skip)
in - the Reader to read frombuilder - builder to useskip - whether to skip null molecules@TestMethod(value="testGetFormat") public IResourceFormat getFormat()
IChemObjectIOIResourceFormat class for this IO class.getFormat in interface IChemObjectIOpublic boolean hasNext()
hasNext in interface Iterator<IAtomContainer>public void setSkip(boolean skip)
skip - ignore error molecules continue readingpublic IAtomContainer next()
next in interface Iterator<IAtomContainer>@TestMethod(value="testClose") public void close() throws IOException
IChemObjectIOclose in interface IChemObjectIOIOExceptionpublic void remove()
DefaultIteratingChemObjectReaderremove in interface Iterator<IAtomContainer>remove in class DefaultIteratingChemObjectReader<IAtomContainer>@TestMethod(value="testSetReader_Reader") public void setReader(Reader reader)
IChemObjectReadersetReader in interface IChemObjectReader@TestMethod(value="testSetReader_InputStream") public void setReader(InputStream reader)
IChemObjectReadersetReader in interface IChemObjectReaderpublic void customizeJob()
public IOSetting[] getIOSettings()
IChemObjectIOIOSettings defined by this IChemObjectIO class.getIOSettings in interface IChemObjectIOgetIOSettings in class DefaultIteratingChemObjectReader<IAtomContainer>IOSettings for this class.public void processIOSettingQuestion(IOSetting setting)
IChemObjectIOListenerprocessIOSettingQuestion in interface IChemObjectIOListener