Object SeekableStream
Stream object interface that can move the current pointer
inheritance relationship
member properties
fd
Integer, queryStreamThe corresponding file descriptor value, implemented by subclasses
1readonly Integer SeekableStream.fd;
member function
seek
Move the current file operation location
1
2SeekableStream.seek(Long offset,
Integer whence = fs.SEEK_SET);
Call parameters:
- offset: Long, specify the new location
- whence: Integer, specifies the position reference, allowed values are: SEEK_SET, SEEK_CUR, SEEK_END
tell
Query the current position of the stream
1Long SeekableStream.tell();
Return results:
- Long, returns the current position of the stream
rewind
Move the current position to the beginning of the stream
1SeekableStream.rewind();
size
Query stream size
1Long SeekableStream.size();
Return results:
- Long, returns the stream size
readAll
Read all remaining data from the stream
1Buffer SeekableStream.readAll() async;
Return results:
- Buffer, returns the data read from the stream. If there is no data to read or the connection is interrupted, null is returned.
truncate
Modify the file size. If the new size is smaller than the original size, the file will be truncated.
1SeekableStream.truncate(Long bytes) async;
Call parameters:
- bytes: Long, new file size
eof
Query whether the file reaches the end
1Boolean SeekableStream.eof();
Return results:
- Boolean, returns True to indicate the end
stat
Query basic information of the current file
1Stat SeekableStream.stat() async;
Return results:
read
Read data of specified size from the stream
1Buffer SeekableStream.read(Integer bytes = -1) async;
Call parameters:
- bytes: Integer, specifies the amount of data to be read. The default is to read data blocks of random size. The size of the data read depends on the device.
Return results:
- Buffer, returns the data read from the stream. If there is no data to read or the connection is interrupted, null is returned.
write
Write the given data to the stream
1SeekableStream.write(Buffer data) async;
Call parameters:
- data:Buffer, given the data to be written
flush
Write file buffer contents to physical device
1SeekableStream.flush() async;
close
Close the current stream object
1SeekableStream.close() async;
copyTo
Copy stream data to target stream
1
2Long SeekableStream.copyTo(Stream stm,
Long bytes = -1) async;
Call parameters:
- stm:Stream, target stream object
- bytes: Long, number of bytes copied
Return results:
- Long, returns the number of bytes copied
toString
Returns the string representation of the object. Generally, "[Native Object]" is returned. The object can be re-implemented according to its own characteristics.
1String SeekableStream.toString();
Return results:
- String, returns the string representation of the object
toJSON
Returns a JSON format representation of the object, generally returning a collection of readable properties defined by the object.
1Value SeekableStream.toJSON(String key = "");
Call parameters:
- key: String, not used
Return results:
- Value, returns a value containing JSON serializable