Package uk.ac.starlink.table.formats
Class AsciiTableWriter
- java.lang.Object
-
- uk.ac.starlink.table.StreamStarTableWriter
-
- uk.ac.starlink.table.formats.AbstractTextTableWriter
-
- uk.ac.starlink.table.formats.AsciiTableWriter
-
- All Implemented Interfaces:
StarTableWriter
public class AsciiTableWriter extends AbstractTextTableWriter
A StarTableWriter which outputs text to a simple format machine-readable text file. This format is suitable for reading usingAsciiStarTableandAsciiTableBuilder.- Since:
- 29 Mar 2004
- Author:
- Mark Taylor (Starlink)
-
-
Constructor Summary
Constructors Constructor Description AsciiTableWriter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.StringformatValue(java.lang.Object val, ValueInfo vinfo, int width)Formats a data value for output.java.lang.StringgetFormatName()Returns "ascii".intgetMaxWidth()Returns the maximum width for a given column.booleanlooksLikeFile(java.lang.String location)Returns true for if the location ends with ".txt".protected voidprintColumnHeads(java.io.OutputStream strm, int[] colwidths, ColumnInfo[] cinfos)Outputs headings for the table columns.protected voidprintLine(java.io.OutputStream strm, int[] colwidths, java.lang.String[] data)Outputs a line of table data.protected voidprintParam(java.io.OutputStream strm, java.lang.String name, java.lang.String value, java.lang.Class<?> clazz)Outputs a parameter and its value.protected voidprintSeparator(java.io.OutputStream strm, int[] colwidths)Outputs a decorative separator line, of the sort you might find between the column headings and the table data.-
Methods inherited from class uk.ac.starlink.table.formats.AbstractTextTableWriter
getBytes, getMaximumParameterLength, getMimeType, getMinNameWidth, getSampledRows, getWriteParameters, setWriteParameters, writeStarTable
-
Methods inherited from class uk.ac.starlink.table.StreamStarTableWriter
writeStarTable
-
-
-
-
Method Detail
-
formatValue
protected java.lang.String formatValue(java.lang.Object val, ValueInfo vinfo, int width)Description copied from class:AbstractTextTableWriterFormats a data value for output.- Specified by:
formatValuein classAbstractTextTableWriter- Parameters:
val- the valuevinfo- the metadata object describing val's typewidth- maximum preferred width into which the value should be formatted- Returns:
- formatted string meaning value, preferably no longer than width characters
-
getFormatName
public java.lang.String getFormatName()
Returns "ascii".- Specified by:
getFormatNamein interfaceStarTableWriter- Overrides:
getFormatNamein classAbstractTextTableWriter- Returns:
- output format
-
looksLikeFile
public boolean looksLikeFile(java.lang.String location)
Returns true for if the location ends with ".txt".- Parameters:
location- the location name (probably filename)- Returns:
- true iff it looks like a file this writer would normally write
-
getMaxWidth
public int getMaxWidth()
Description copied from class:AbstractTextTableWriterReturns the maximum width for a given column. Values longer than this may be truncated.- Specified by:
getMaxWidthin classAbstractTextTableWriter- Returns:
- maximum permitted column width in characters
-
printSeparator
protected void printSeparator(java.io.OutputStream strm, int[] colwidths)Description copied from class:AbstractTextTableWriterOutputs a decorative separator line, of the sort you might find between the column headings and the table data.- Specified by:
printSeparatorin classAbstractTextTableWriter- Parameters:
strm- stream to write intocolwidths- column widths in characters
-
printLine
protected void printLine(java.io.OutputStream strm, int[] colwidths, java.lang.String[] data) throws java.io.IOExceptionDescription copied from class:AbstractTextTableWriterOutputs a line of table data.- Specified by:
printLinein classAbstractTextTableWriter- Parameters:
strm- stream to write intocolwidths- column widths in charactersdata- array of strings to be output, one per column- Throws:
java.io.IOException
-
printColumnHeads
protected void printColumnHeads(java.io.OutputStream strm, int[] colwidths, ColumnInfo[] cinfos) throws java.io.IOExceptionDescription copied from class:AbstractTextTableWriterOutputs headings for the table columns.- Specified by:
printColumnHeadsin classAbstractTextTableWriter- Parameters:
strm- stream to write intocolwidths- column widths in characterscinfos- array of column headings- Throws:
java.io.IOException
-
printParam
protected void printParam(java.io.OutputStream strm, java.lang.String name, java.lang.String value, java.lang.Class<?> clazz) throws java.io.IOExceptionDescription copied from class:AbstractTextTableWriterOutputs a parameter and its value.- Specified by:
printParamin classAbstractTextTableWriter- Parameters:
strm- stream to write intoname- parameter namevalue- formatted parameter valueclazz- type of value- Throws:
java.io.IOException
-
-