Class TSASCIIHandler
- java.lang.Object
-
- com.jstatcom.io.TSASCIIHandler
-
- All Implemented Interfaces:
- DataHandler
public final class TSASCIIHandler extends java.lang.Object implements DataHandler
Import handler for ASCII data files that either contain only the data points or are in the DAT format. It is designed as a singleton.An example DAT file looks like:
<1960 Q1>
invest income cons
180 451 415
179 465 421
185 485 434
In line 1 the first number is number of variables, then the date of the first observation and the periodicity.
Line 2 contains the variable names. The remaining lines are the ordered observations. Any Description is added as a comment and must be included in / * ... * /.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidexportData(java.io.File file, JSCData data, java.lang.String description)Exports data to a file in ASCII format.voidexportTS(java.io.File file, TS[] ts, java.lang.String description)Exports time series to a file in the format that the respective implementation of this interface handles.JSCDatagetData(ImportTypes type)Gets the imported data according to an instance ofTSImportTypes.static TSASCIIHandlergetInstance()Gets the singleton instance of this handler.booleanimportData(java.io.File dataFile)Initiates parsing of data file.voidsetTestMode(boolean noDialog)Sets this handler in test mode.
-
-
-
Method Detail
-
getInstance
public static TSASCIIHandler getInstance()
Gets the singleton instance of this handler.- Returns:
- instance
-
importData
public boolean importData(java.io.File dataFile)
Initiates parsing of data file.- Specified by:
importDatain interfaceDataHandler- Parameters:
dataFile- the file to read in- Returns:
trueof import was ok,falseif canceled or erroneous- Throws:
java.lang.IllegalArgumentException-if (dataFile == null || !dataFile.isFile())
-
getData
public JSCData getData(ImportTypes type)
Gets the imported data according to an instance ofTSImportTypes.- Specified by:
getDatain interfaceDataHandler- Parameters:
type- the elementtype of a time series dataset- Returns:
- the data stored as
JSCData - Throws:
java.lang.IllegalArgumentException-if (type == null)java.lang.IllegalStateException- if nothing was imported before
-
exportTS
public void exportTS(java.io.File file, TS[] ts, java.lang.String description)Description copied from interface:DataHandlerExports time series to a file in the format that the respective implementation of this interface handles.Implementation Note:
Not every handler implementation uses all information contained in a time series. For example, some handlers might not store the variable names, the date, and the description, because this may not be supported by the respective format.Implementations of this method should throw unchecked exceptions in case of errors, which should be dealt with by the calling objects.
- Specified by:
exportTSin interfaceDataHandler- Parameters:
file- the file to store the time series tots- array of time series to exportdescription- an optional dataset description that handler implementations might use
-
exportData
public void exportData(java.io.File file, JSCData data, java.lang.String description)Exports data to a file in ASCII format. This method uses thedisplaymethod on thedataparameter.Usage Note:
To storeNARRAYdata with its full precision, make sure to calldata.setFormatString("%-s ")before. Otherwise the default formatter is used, which only stores 4 digits. Nothing happens ifdatais empty.- Specified by:
exportDatain interfaceDataHandler- Parameters:
file- the file to store the data todata- the data object to store, allJSCDatatypes are supporteddescription- an optional description that handler implementations might use, can benull- Throws:
java.lang.IllegalArgumentException- iffileordataisnulljava.lang.RuntimeException- if file writing fails
-
setTestMode
public void setTestMode(boolean noDialog)
Sets this handler in test mode. No user dialog is shown, default values are used instead. This is helpful for running automated unit tests.- Parameters:
noDialog-
-
-
DMelt 3.0 © DataMelt by jWork.ORG