Package org.apache.tika.parser.csv
Class TextAndCSVParser
- java.lang.Object
- 
- org.apache.tika.parser.AbstractEncodingDetectorParser
- 
- org.apache.tika.parser.csv.TextAndCSVParser
 
 
- 
- All Implemented Interfaces:
- Serializable,- Parser
 
 public class TextAndCSVParser extends AbstractEncodingDetectorParser Unless theTikaCoreProperties.CONTENT_TYPE_USER_OVERRIDEis set, this parser tries to assess whether the file is a text file, csv or tsv. If the detector detects regularity in column numbers and/or encapsulated cells, this parser will apply theCSVParser; otherwise, it will treat the contents as text.If there is a csv parse exception during detection, the parser sets the HttpHeaders.CONTENT_TYPEtoMediaType.TEXT_PLAINand treats the file asMediaType.TEXT_PLAIN.If there is a csv parse exception during the parse, the parser writes what's left of the stream as if it were text and then throws an exception. As of this writing, the content that was buffered by the underlying CSVParseris lost.- See Also:
- Serialized Form
 
- 
- 
Field SummaryFields Modifier and Type Field Description static PropertyDELIMITER_PROPERTYstatic PropertyNUM_COLUMNSIf the file is detected as a csv/tsv, this is the number of columns in the first row.static PropertyNUM_ROWSIf the file is detected as a csv/tsv, this is the number of rows if the file is successfully read (e.g.
 - 
Constructor SummaryConstructors Constructor Description TextAndCSVParser()TextAndCSVParser(EncodingDetector encodingDetector)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description Set<MediaType>getSupportedTypes(ParseContext context)Returns the set of media types supported by this parser when used with the given parse context.voidparse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context)Parses a document stream into a sequence of XHTML SAX events.- 
Methods inherited from class org.apache.tika.parser.AbstractEncodingDetectorParsergetEncodingDetector, getEncodingDetector, setEncodingDetector
 
- 
 
- 
- 
- 
Field Detail- 
DELIMITER_PROPERTYpublic static final Property DELIMITER_PROPERTY 
 - 
NUM_COLUMNSpublic static final Property NUM_COLUMNS If the file is detected as a csv/tsv, this is the number of columns in the first row.
 - 
NUM_ROWSpublic static final Property NUM_ROWS If the file is detected as a csv/tsv, this is the number of rows if the file is successfully read (e.g. no encapsulation exceptions, etc).
 
- 
 - 
Constructor Detail- 
TextAndCSVParserpublic TextAndCSVParser() 
 - 
TextAndCSVParserpublic TextAndCSVParser(EncodingDetector encodingDetector) 
 
- 
 - 
Method Detail- 
getSupportedTypespublic Set<MediaType> getSupportedTypes(ParseContext context) Description copied from interface:ParserReturns the set of media types supported by this parser when used with the given parse context.- Parameters:
- context- parse context
- Returns:
- immutable set of media types
 
 - 
parsepublic void parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context) throws IOException, SAXException, TikaException Description copied from interface:ParserParses a document stream into a sequence of XHTML SAX events. Fills in related document metadata in the given metadata object.The given document stream is consumed but not closed by this method. The responsibility to close the stream remains on the caller. Information about the parsing context can be passed in the context parameter. See the parser implementations for the kinds of context information they expect. - Parameters:
- stream- the document stream (input)
- handler- handler for the XHTML SAX events (output)
- metadata- document metadata (input and output)
- context- parse context
- Throws:
- IOException- if the document stream could not be read
- SAXException- if the SAX events could not be processed
- TikaException- if the document could not be parsed
 
 
- 
 
-