WRITE# statement

Purpose

Output data to a sequential file in a delimited format.

Syntax

WRITE #filenum&, [expression [{,|;} expression] ...]

Remarks

WRITE# is similar to PRINT#, except WRITE# inserts a comma in the output file between each expression. It encloses string data within quotation marks, and adds no leading or trailing spaces around numeric values.

WRITE# is the preferred method of writing data to a sequential file, since it formats the output to be readable by the INPUT# statement.  In other words, INPUT# respects the delimiter characters that separate items in a line of text, as created by WRITE#.

filenum&

The file number used when the file or device was opened.

expression

A numeric or a string expression representing the data to be written to the file or device.   WRITE# with a file number and a comma but no expressions, outputs a carriage return to the file. To read a delimited file without regard to the delimiter characters, use the LINE INPUT# statement.

Restrictions

For best results, strings should not contain quotation marks, as these may interfere with the expected output format.

Each expression in the WRITE# statement must be separated from other expressions by a comma or semicolon. Unlike the PRINT# statement, WRITE# does not allow a trailing comma or semicolon.

See also

GET, GET$, INPUT#, LINE INPUT#, OPEN, PRINT#, PUT, PUT$, SETEOF

Example

' Open a sequential output file and write to it

OPEN "FILE.TXT" FOR OUTPUT AS #1

WRITE #1, "TEST"

z& = -12345&

info1$ = "Do not covet"

info2$ = "thy neighbors ox"

WRITE #1, z&, info1$, info2$

WRITE #1, "TEST"

CLOSE #1

Result

"TEST"

-12345,"Do not covet","thy neighbors ox"

"TEST"