OpenVMS has a rich file system with many file types and attributes. The most commonly used ones are:
File Types:
Sequential: normal sequential-access files. Programs can seek arbitrary locations in STREAMLF files.
Relative: a file with contents that can be accessed by record number.
Indexed: a bit like a database. Each record has a key or a set of keys which can be used to locate it directly.
Record Types:
Fixed: records are all the same length.
Variable: records can be any length up to a specified maximum size. OpenVMS will usually embed a record delimiter in the file but users rarely see it.
VFC: variable with a fixed control area. Usually the first two bytes of the record indicate the record length.
Stream: a bit like a Linux file. There is no record structure—only a stream of bytes. Optionally, LF (line feed) or CR (carriage return) can be named as a record delimiter.
Record Attributes:
None: quite valid, particularly for binary files.
FORTRAN: the first byte of each record tells the system how to print the record, i.e., whether to start a new line, a new page, etc.
Carriage Return: when the file is printed, an LF and CR will be printed at the end of each record, even though they are not stored in the file.