table_io, a MATLAB code which can read or write a TABLE file.

A TABLE file is a simple format for storing a double-indexed array of data. We regard this is a situation involving N points in M dimensions, with M relatively small (often just 2 or 3, but possibly 10 or 20) while N can be "enormous" (10, 100, 1,000 or 10,000).

To keep things simple, then, the data is written to an ASCII file, with optional comment lines (which must start with the '#' character) and blank lines (which are ignored). The point data is stored by writing the coordinates of each point on a separate line. No information about M or N is explicitly included in the file. It is up to the I/O program to determine this.

TABLE_IO supplies routines by which a TABLE file can easily be written or read. A typical write operation simply calls routine R8MAT_WRITE. A typical read operation will probably first want to call R8MAT_HEADER_READ to determine the values of M and N, and then allocate space for the table, and then call R8MAT_DATA_READ to read the data.


The computer code and data files described and made available on this web page are distributed under the MIT license


table_io is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version and

Related Data and Programs:

table, a format which is used for the files input or output by the TABLE_IO library.


Source Code:

Last revised on 18 February 2019.