PUT (File I/O) Statement Details Syntax PUT [#]filenumber[,[recordnumber][,variable]] or PUT [#]filenumber[,{recordnumber|recordnumber,variable|,variable}] Argument Description filenumber The number used in the OPEN statement to open the file. recordnumber For random-mode files, the number of the record to be written. For binary-mode files, the byte position in the file where writing is done. The first record in a file is record 1. If you omit recordnumber, the next record or byte (the one after the last GET or PUT statement, or the one pointed to by the last SEEK) is written to. The largest possible record number is 2^31 -1 or 2,147,483,647. variable The variable containing the output to be written to the file. The PUT statement writes as many bytes to the file as there are bytes in the variable. If you use a variable, you do not need to use MKI$, MKL$, MKS$, or MKD$ to convert numeric fields before writing. You may not use a FIELD statement with the file if you use the variable argument. For random-access files, you can use any variable as long as the length of the variable is less than or equal to the length of the record. Usually, a record variable defined to match the fields in a data record is used. For binary-mode files, you can use any variable. When you use a variable-length string variable, the statement writes as many bytes as there are characters in the string's value. For example, the following two statements write 15 bytes to file number 1: VarString$=STRING$ (15, "X") PUT #1,,VarString$ See the examples below for more information about using variables rather than FIELD statements for random-access files. A record cannot contain more than 32,767 bytes. You can omit the recordnumber, the variable, or both. If you omit only the recordnumber, you must still include the commas: PUT #4,,FileBuffer If you omit both arguments, you do not include the commas: PUT #4 The GET and PUT statements allow fixed-length input and output for BASIC communications files. Be careful using GET and PUT for communications because PUT writes a fixed number of characters and may wait indefinitely if there is a communications failure. Note: When using a file buffer defined by a FIELD statement, LSET, RSET, PRINT # , PRINT # USING, and WRITE # may be used to put characters in the random-file buffer before executing a PUT statement. In the case of WRITE #, BASIC pads the buffer with spaces up to the carriage return. Any attempt to read or write past the end of the buffer causes an error message that reads "FIELD overflow."