Package weka.core.converters

# Class ArffSaver

java.lang.Object
weka.core.converters.AbstractSaver
weka.core.converters.AbstractFileSaver
weka.core.converters.ArffSaver

All Implemented Interfaces:
  `Serializable`, `CapabilitiesHandler`, `BatchConverter`, `FileSourcedConverter`, `IncrementalConverter`, `Saver`, `EnvironmentHandler`, `OptionHandler`, `RevisionHandler`

public class ArffSaver extends AbstractFileSaver implements BatchConverter, IncrementalConverter
Writes to a destination in arff text format.

Valid options are:

     -i <the input file>
     The input file

     -o <the output file>
     The output file

Version:
  $Revision: 7950 $
Author:
  Stefan Mutter (mutter@cs.waikato.ac.nz)
See Also:
  - `Saver`
  - Serialized Form

## Field Summary

### Fields inherited from interface weka.core.converters.Saver

`BATCH, INCREMENTAL, NONE`

## Constructor Summary

Constructors
Constructor
Description
`ArffSaver()`
Constructor

## Method Summary

Modifier and Type
Method
Description
`String`
`compressOutputTipText()`
Returns the tip text for this property
`Capabilities`
`getCapabilities()`
Returns the Capabilities of this saver.
`boolean`
`getCompressOutput()`
Gets whether the output data is compressed.
`String`
`getFileDescription()`
Returns a description of the file type.
`String[]`
`getFileExtensions()`
Gets all the file extensions used for this type of file
`String[]`
`getOptions()`
returns the options of the current setup
`String`
`getRevision()`
Returns the revision string.
`String`
`globalInfo()`
Returns a string describing this Saver
`Enumeration`
`listOptions()`
Returns an enumeration describing the available options.
`static void`
`main(String[] args)`
Main method.
`void`
`resetOptions()`
Resets the Saver
`void`
`setCompressOutput(boolean value)`
Sets whether to compress the output.
`void`
`setDestination(OutputStream output)`
Sets the destination output stream.
`void`
`setFile(File outputFile)`
Sets the destination file.
`void`
`setOptions(String[] options)`
Parses the options for this object.
`void`
`writeBatch()`
Writes a Batch of instances
`void`
`writeIncremental(Instance inst)`
Saves an instances incrementally.

### Methods inherited from class weka.core.converters.AbstractFileSaver

`cancel, filePrefix, getFileExtension, getUseRelativePath, getWriter, resetWriter, retrieveDir, retrieveFile, runFileSaver, setDestination, setDir, setDirAndPrefix, setEnvironment, setFilePrefix, setUseRelativePath, useRelativePathTipText`

### Methods inherited from class weka.core.converters.AbstractSaver

`getInstances, getWriteMode, resetStructure, setInstances, setRetrieval, setStructure`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ArffSaver

public ArffSaver()
Constructor

## Method Details

### listOptions

public Enumeration listOptions()
Returns an enumeration describing the available options.

Specified by:
  `listOptions` in interface `OptionHandler`
Overrides:
  `listOptions` in class `AbstractFileSaver`
Returns:
  an enumeration of all the available options.

### getOptions

public String[] getOptions()
returns the options of the current setup

Specified by:
  `getOptions` in interface `OptionHandler`
Overrides:
  `getOptions` in class `AbstractFileSaver`
Returns:
  the current options

### setOptions

public void setOptions(String[] options) throws Exception
Parses the options for this object.

Valid options are:

     -i <the input file>
      The input file

     -o <the output file>
      The output file

     -compress
      Compresses the data (uses '.xrff.gz' as extension instead of '.xrff')
      (default: off)

Specified by:
  `setOptions` in interface `OptionHandler`
Overrides:
  `setOptions` in class `AbstractFileSaver`
Parameters:
  `options` - the options to use
Throws:
  `Exception` - if setting of options fails

### compressOutputTipText

public String compressOutputTipText()
Returns the tip text for this property

Returns:
  tip text for this property suitable for displaying in the explorer/experimenter gui

### getCompressOutput

public boolean getCompressOutput()
Gets whether the output data is compressed.

Returns:
  true if the output data is compressed

### setCompressOutput

public void setCompressOutput(boolean value)
Sets whether to compress the output.

Parameters:
  `value` - if truee the output will be compressed

### globalInfo

public String globalInfo()
Returns a string describing this Saver

Returns:
  a description of the Saver suitable for displaying in the explorer/experimenter gui

### getFileDescription

public String getFileDescription()
Returns a description of the file type.

Specified by:
  `getFileDescription` in interface `FileSourcedConverter`
Specified by:
  `getFileDescription` in class `AbstractFileSaver`
Returns:
  a short file description

### getFileExtensions

public String[] getFileExtensions()
Gets all the file extensions used for this type of file

Specified by:
  `getFileExtensions` in interface `FileSourcedConverter`
Overrides:
  `getFileExtensions` in class `AbstractFileSaver`
Returns:
  the file extensions

### setFile

public void setFile(File outputFile) throws IOException
Sets the destination file.

Specified by:
  `setFile` in interface `FileSourcedConverter`
Specified by:
  `setFile` in interface `Saver`
Overrides:
  `setFile` in class `AbstractFileSaver`
Parameters:
  `outputFile` - the destination file.
Throws:
  `IOException` - throws an IOException if file cannot be set

### setDestination

public void setDestination(OutputStream output) throws IOException
Sets the destination output stream.

Specified by:
  `setDestination` in interface `Saver`
Overrides:
  `setDestination` in class `AbstractFileSaver`
Parameters:
  `output` - the output stream.
Throws:
  `IOException` - throws an IOException if destination cannot be set

### resetOptions

public void resetOptions()
Resets the Saver

Overrides:
  `resetOptions` in class `AbstractFileSaver`

### getCapabilities

public Capabilities getCapabilities()
Returns the Capabilities of this saver.

Specified by:
  `getCapabilities` in interface `CapabilitiesHandler`
Overrides:
  `getCapabilities` in class `AbstractSaver`
Returns:
  the capabilities of this object
See Also:
  - `Capabilities`

### writeIncremental

public void writeIncremental(Instance inst) throws IOException
Saves an instances incrementally. Structure has to be set by using the setStructure() method or setInstances() method.

Specified by:
  `writeIncremental` in interface `Saver`
Overrides:
  `writeIncremental` in class `AbstractSaver`
Parameters:
  `inst` - the instance to save
Throws:
  `IOException` - throws IOEXception if an instance cannot be saved incrementally.

### writeBatch

public void writeBatch() throws IOException
Writes a Batch of instances

Specified by:
  `writeBatch` in interface `Saver`
Specified by:
  `writeBatch` in class `AbstractSaver`
Throws:
  `IOException` - throws IOException if saving in batch mode is not possible

### getRevision

public String getRevision()
Returns the revision string.

Specified by:
  `getRevision` in interface `RevisionHandler`
Returns:
  the revision

### main

public static void main(String[] args)
Main method.

Parameters:
  `args` - should contain the options of a Saver.