Writes values of data structures to a binary file opened by
||Separator character as a literal character or a scalar giving an ASCII code (0-255); default * i.e. none|
||Terminator to use at the end of a text (
||File position at which to write the data; default 0 writes at the current position|
||Data structures to write to the file|
||Output format to use when writing the structures (
||Saves the number of bytes written to the file|
%WRITE writes values of data structures to the binary file opened by
%OPEN. The data structures are specified by the
FORMATTED parameter specifies the format to be used to write the structures to the file. The available formats are:
bit the numbers (0,1) in the structure are combined as single bits into bytes (e.g. 1,0,0,1,0,1,0,1,0,1,0,0,1,1,1,1 would give the two bytes 0x41CF)
byte the numbers are written as a single byte (0 to 255)
shortint the numbers are written as a 2-byte signed integer (-31767 to 32767)
longint the numbers are written as 4-byte signed integer; default for a scalar
real the numbers are written as single precision (REAL*4) values (missing value = -1e37)
double the numbers are written as double precision (REAL*8) values (missing value = -1e307); default for a variate or matrix
string the texts are written with a single byte giving the length, followed by the ASCII bytes in UTF8 format
text the texts are written with 4 bytes giving the length, followed by the ASCII bytes in UTF8 format, default for a text
rawtext the texts are written as ASCII bytes in UTF8 format
factor the values are compressed into as few bytes as possible; the default for a factor
factor format can be used only by factors. The number of bytes per item depends on the number of levels in the factor. For 1-3 levels, 4 items are combined per byte, for 4-15 levels, 2 items are combined per byte, for 16-255 levels, each item is written in a single byte, for 256-65535 levels, each item is written in a two bytes, otherwise each item is written in 4 bytes. A value of 0 is used to represent a missing value in the factor. The formats
rawtext can be used only by texts.
TERMINATOR options are used only for
SEPARATOR option can specify a single ASCII character to be used between items. By default there is no separator. The
TERMINATOR option specifies what to write after each string. The default setting
null uses a null character (byte 0 as in C strings). With the
newline setting, the two newline characters (bytes 13 and 10) are use to terminate strings.
POSITION option can be used to reset the position where the values are written. The default of 0 writes the values at the current position in the file.
NBYTES option saves the number of bytes that have been written to the file.
%WRITE ignores restrictions on