at the given
offset>, returning at most length>
bytes (less if the end of file is reached first). If
offset>
is negative, it is relative to the end of the file.
- When
offset> and length> parameters are omitted,
- it returns the whole of the file.
- The part of a file must be a valid text in the server encoding.
+ If
offset> and length> are omitted, the entire
+ file is returned. The bytes read from the file are interpreted as a string
+ in the server encoding; an error is thrown if they are not valid in that
+ encoding.
- pg_read_binary_file> returns part of a file as like as
- pg_read_file>, but the result is a bytea value.
- One of the usages is to read a file in the specified encoding combined with
- convert_from> function:
+ pg_read_binary_file> is similar to
+ pg_read_file>, except that the result is a bytea value;
+ accordingly, no encoding checks are performed.
+ In combination with the convert_from> function, this function
+ can be used to read a file in a specified encoding:
SELECT convert_from(pg_read_binary_file('file_in_utf8.txt'), 'UTF8');
}
/*
- * In addition to read_binary_file, verify whether the contents are encoded
+ * Similar to read_binary_file, but we verify that the contents are valid
* in the database encoding.
*/
static text *
/* Make sure the input is valid */
pg_verifymbstr(VARDATA(buf), VARSIZE(buf) - VARHDRSZ, false);
- /* OK, we can cast it as text safely */
+ /* OK, we can cast it to text safely */
return (text *) buf;
}