MATLAB Function Reference Previous page   Next Page
textread

Read data from text file, write to multiple outputs

    Graphical Interface

As an alternative to textread, use the Import Wizard. To activate the Import Wizard, select Import Data from the File menu.

Syntax

Description

[A,B,C,...] = textread('filename','format') reads data from the file 'filename' into the variables A,B,C, and so on, using the specified format, until the entire file is read. textread is useful for reading text files with a known format. textread handles both fixed and free format files.

textread matches and converts groups of characters from the input. Each input field is defined as a string of non-white-space characters that extends to the next white-space or delimiter character, or to the maximum field width. Repeated delimiter characters are significant, while repeated white-space characters are treated as one.

The format string determines the number and types of return arguments. The number of return arguments is the number of items in the format string. The format string supports a subset of the conversion specifiers and conventions of the C language fscanf routine. Values for the format string are listed in the table below. White-space characters in the format string are ignored.

format
Action
Output
Literals
(ordinary characters)
Ignore the matching characters. For example, in a file that has Dept followed by a number (for department number), to skip the Dept and read only the number, use 'Dept' in the format string.
None
%d
Read a signed integer value.
Double array
%u
Read an integer value.
Double array
%f
Read a floating-point value.
Double array
%s
Read a white-space or delimiter-separated string.
Cell array of strings
%q
Read a double quoted string, ignoring the quotes.
Cell array of strings
%c
Read characters, including white space.
Character array
%[...]
Read the longest string containing characters specified in the brackets.
Cell array of strings
%[^...]
Read the longest nonempty string containing characters that are not specified in the brackets.
Cell array of strings
%*...
instead of %
Ignore the matching characters specified by *.
No output
%w...
instead of %
Read field width specified by w. The %f format supports %w.pf, where w is the field width and p is the precision.

[A,B,C,...] = textread('filename','format',N) reads the data, reusing the format string N times, where N is an integer greater than zero. If N is smaller than zero, textread reads the entire file.

[...] = textread(...,'param','value',...) customizes textread using param/value pairs, as listed in the table below.

param
value
Action

' '
\b
\n
\r
\t
Space
Backspace
Newline
Carriage return
Horizontal tab
bufsize
Positive integer
Specifies the maximum string length, in bytes. Default is 4095.
commentstyle
matlab
Ignores characters after %.
commentstyle
shell
Ignores characters after #.
commentstyle
c
Ignores characters between /* and */.
commentstyle
c++
Ignores characters after //.
delimiter
One or more characters
Act as delimiters between elements. Default is none.
emptyvalue
Scalar double
Value given to empty cells when reading delimited files. Default is 0.
endofline
Single character or '\r\n'
Character that denotes the end of a line.
Default is determined from file
expchars
Exponent characters
Default is eEdD.
headerlines
Positive integer
Ignores the specified number of lines at the beginning of the file.
whitespace
Any from the list below:
Treats vector of characters as white space. Default is ' \b\t'.

Remarks

If you want to preserve leading and trailing spaces in a string, use the whitespace parameter as shown here:

Examples

Example 1 -- Read All Fields in Free Format File Using %

The first line of mydata.dat is

Read the first line of the file as a free format file using the % format.

returns

Example 2 -- Read as Fixed Format File, Ignoring the Floating Point Value

The first line of mydata.dat is

Read the first line of the file as a fixed format file, ignoring the floating-point value.

returns

%*f in the format string causes textread to ignore the floating point value, in this case, 12.34.

Example 3 -- Read Using Literal to Ignore Matching Characters

The first line of mydata.dat is

Read the first line of the file, ignoring the characters Type in the second field.

returns

Type%d in the format string causes the characters Type in the second field to be ignored, while the rest of the second field is read as a signed integer, in this case, 1.

Example 4 -- Specify Value to Fill Empty Cells

For files with empty cells, use the emptyvalue parameter. Suppose the file data.csv contains:

Read the file using NaN to fill any empty cells:

Example 5 -- Read M-File into a Cell Array of Strings

Read the file fft.m into cell array of strings.

See Also

textscan, dlmread, csvread, fscanf


Previous page  Text Properties textscan Next page

© 1994-2005 The MathWorks, Inc.