Back to library index.

Package textload (in textload.i) -

Index of documented functions or symbols:


DOCUMENT text = text_cells(filename, delim)
  returns a 2D array of strings containing the spreadsheet data
  in FILENAME.  FILENAME can be comma separated values (.csv),
  or tab-delimited columns.  DELIM is the field delimiter character,
  which can be omitted to get the following default behavior:
  1. If FILENAME ends in ".csv" (any case), DELIM = ",".
  2. If the file contains any tab characters, DELIM = "\t".
  3. Otherwise, DELIM = ",".
  If DELIM = ",", an attempt is made to conform with.csv format
  conventions with respect to quoted fields.
  The quote= keyword controls whether or not to exclude field
  separators (delim or newline) enclosed in "...".  The default
  is quote=1 (yes) for DELIM=",", otherwise quote=0 (no).

SEE ALSO: text_lines, text_load, text_csv


DOCUMENT text_csv, file, col1, col2, ..., colN
         f = text_csv(file, col1, col2, ..., colN)
  write comma or tab delimited columns COL1, ... COLN to FILE, which
  may be a filename, a text file handle, or nil [] to write to the
  terminal.  Called as a function, returns the open text file handle.
  The default delimiter between columns is a comma, unless FILE is
  nil, in which case the default delimiter is tab.  You can force tab
  delimited columns using the tab=1 keyword, and comma delimited columns
  using tab=0.

  Each COLi may be nil to leave an empty column, a 1D array to
  produce a single column, or a 2D array to produce several columns.
  For 2D arrays, the first index is the row index, and the second is
  the column index.  Acceptable data types are string or any numeric
  data type.  The columns need not have the same length; the first
  row will be shared.  Numeric types are converted to strings using
  the totxt function.  You can pass a format argument to totxt using
  a fmt= keyword to text_csv.  If fmt=[fmt1,fmt2,...,fmtM], the
  formats will apply to the first M columns (note that one COLi spans
  multiple columns if it is 2D, so multiple fmtM may apply).  The
  fmtI only apply to non-string COLi; the fmtI corresponding to a
  string COLi are ignored.

  Finally, text_csv accepts a head=[head1,head2,...,headM] to write
  a first row of column headings.  Thus,
    text_csv, filename, head=[h1,h2,h3], c1, c2, c3;
  is equivalent to
    text_csv, text_csv(filename, h1, h2, h3), c1, c2, c3;
  assuming that h1, h2, and h3 are scalar strings.  Like fmt=, the
  head= are per column, not per COLi argument.

  Different platforms (e.g.- MSWindows, MacOS X, Linux, etc) behave
  differently, but here are some things to try in order to move your
  yorick arrays into a spreadsheet: If you write tab delimited columns
  to your terminal, you may find that cutting the output from your
  terminal window and pasting it into your spreadsheet window properly
  preserves your columns.  Additionally, if you write a file whose
  name ends in ".csv", your file manager will probably recognize that
  it should be opened in a spreadsheet program.  (You might also want
  to experiment with comma or tab delimited text file names ending in
  ".xls", which often behave like actual spreadsheet files.)  Finally,
  if you are an emacs user, don't miss csv-mode in recent versions.

SEE ALSO: text_cells, totxt


DOCUMENT string_array = text_lines(filename)
  returns string array representing the text file FILENAME, one
  string per line.  Unlike rdline, text_lines handles old Mac and
  Windows/DOS end-of-lines correctly.

SEE ALSO: text_cells, text_load


DOCUMENT char_array = text_load(filename)
  returns char array representing the text file FILENAME.  If FILENAME
  contains old Mac OS CR end-of-line characters, or Windows/DOS CRLF
  end-of-line sequences, these are converted to the single LF UNIX
  end-of-line.  Adds final newline if not present.

SEE ALSO: text_lines, text_cells