# FilePlayer

## reads space-delimited text files at specific lines.

Inherits from:: Object : AbstractFunction : Stream : FileReader

FilePlayer is an enhanced version of FileReader, allowing to jump to specific lines in the file.

Subclasses: TabFilePlayer, CSVFilePlayer, SemiColonFilePlayer.

See also: FileReader

### Creation / Class Methods

*new(pathOrFile,skipEmptyLines,skipBlanks,delimiter)
  Create a new instance. For a description of arguments, see FileReader

### Accessing Instance and Class Variables

next
  Read the next line.
nextInterpret
  Read the next line and interpret the result (element by element). Note: this is an extension to FileReader, so it can be used in that class too.
readAt(line)
  Read at the given line number
readAtInterpret(line)
  Read at the given line number, and interpret the result (element by element)
goToLine(line)
  Go to the given line (this does not read the line)
currentLine
  The current line where we are in the file.
length
  Length of the file
reset
  Reset the stream. I.e. go to the start of the file.
setCurrentLine(cl)
  Set the current line number (used internally)

### Example 1

    // create a file:
    f = TabFileWriter.new( "testfile2.txt", "w", true);

    Task({
        20.do{
            f.writeLine( Array.fill( 10, { 1.0.rand }));
            1.0.wait;
        };
        "done".postln;
    }).play;

    f.close;

    // view the file:
    "testfile2.txt".openDocument;

    // read it with the player:
    a = TabFilePlayer.new( "testfile2.txt" );

    a.next;

    a.readAt( 10 );

    a.readAt( 5 );

    // returns nil: (no more lines)
    a.readAt( 20 );

This helpfile was created with the class HelpFile2