public class FormatFactory extends Object
StringReader stringReader = new StringReader("<molecule/>");
IChemFormat format = new FormatFactory().guessFormat(stringReader);
Constructor and Description |
---|
FormatFactory()
Constructs a ReaderFactory which tries to detect the format in the
first 65536 chars.
|
FormatFactory(int headerLength)
Constructs a ReaderFactory which tries to detect the format in the
first given number of chars.
|
Modifier and Type | Method and Description |
---|---|
List<IChemFormatMatcher> |
getFormats()
Returns the list of recognizable formats.
|
IChemFormat |
guessFormat(InputStream input) |
IChemFormat |
guessFormat(Reader input)
Creates a String of the Class name of the
IChemObject reader
for this file format. |
void |
registerFormat(IChemFormatMatcher format)
Registers a format for detection.
|
public FormatFactory()
public FormatFactory(int headerLength)
headerLength
- length of the header in number of charspublic void registerFormat(IChemFormatMatcher format)
public List<IChemFormatMatcher> getFormats()
List
of IChemFormat
s.public IChemFormat guessFormat(Reader input) throws IOException
IChemObject
reader
for this file format. The input is read line-by-line
until a line containing an identifying string is
found.
The ReaderFactory detects more formats than the CDK has Readers for.
This method is not able to detect the format of gziped files.
Use guessFormat(InputStream)
instead for such files.
IChemFormat
or null
if the
file format is not recognized.IOException
- if an I/O error occursIllegalArgumentException
- if the input is nullguessFormat(InputStream)
public IChemFormat guessFormat(InputStream input) throws IOException
IOException
Copyright © 2022. All rights reserved.