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`, `CapabilitiesIgnorer`, `BatchConverter`, `FileSourcedConverter`, `IncrementalConverter`, `Saver`, `EnvironmentHandler`, `OptionHandler`, `RevisionHandler`, `WeightedInstancesHandler`

public class ArffSaver extends AbstractFileSaver implements BatchConverter, IncrementalConverter, WeightedInstancesHandler
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

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

     -decimal <num>
      The maximum number of digits to print after the decimal
      place for numeric values (default: 6)

Version:
  $Revision: 14860 $
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
  `int`
  `getMaxDecimalPlaces()`
  Get the maximum number of decimal places to print
  `String[]`
  `getOptions()`
  returns the options of the current setup
  `String`
  `getRevision()`
  Returns the revision string.
  `String`
  `globalInfo()`
  Returns a string describing this Saver
  `Enumeration<Option>`
  `listOptions()`
  Returns an enumeration describing the available options.
  `static void`
  `main(String[] args)`
  Main method.
  `String`
  `maxDecimalPlacesTipText()`
  Returns the tip text for this property.
  `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`
  `setMaxDecimalPlaces(int maxDecimal)`
  Set the maximum number of decimal places to print
  `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

  `doNotCheckCapabilitiesTipText, getDoNotCheckCapabilities, getInstances, getWriteMode, resetStructure, setDoNotCheckCapabilities, 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<Option> 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 '.arff.gz' as extension instead of '.arff')
          (default: off)

         -decimal <num>
          The maximum number of digits to print after the decimal
          place for numeric values (default: 6)

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

  - ### setMaxDecimalPlaces

    public void setMaxDecimalPlaces(int maxDecimal)
    Set the maximum number of decimal places to print
    Parameters:
      `maxDecimal` - the maximum number of decimal places to print

  - ### getMaxDecimalPlaces

    public int getMaxDecimalPlaces()
    Get the maximum number of decimal places to print
    Returns:
      the maximum number of decimal places to print

  - ### maxDecimalPlacesTipText

    public String maxDecimalPlacesTipText()
    Returns the tip text for this property.
    Returns:
      tip text for this property suitable for displaying in the explorer/experimenter gui

  - ### 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.