Class FileOutputStream
- All Implemented Interfaces:
AutoCloseable, Seekable, Proxy, AutoCloseable
GFileOutputStream provides output streams that write their
content to a file.
GFileOutputStream implements Seekable, which allows the output
stream to jump to arbitrary positions in the file and to truncate
the file, provided the filesystem of the file supports these
operations.
To find the position of a file output stream, use Seekable.tell().
To find out if a file output stream supports seeking, use
Seekable.canSeek().To position a file output stream, use
Seekable.seek(long, SeekType, Cancellable). To find out if a file output stream supports
truncating, use Seekable.canTruncate(). To truncate a file output
stream, use Seekable.truncate(long, Cancellable).
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classFileOutputStream.Builder<B extends FileOutputStream.Builder<B>>Inner class implementing a builder pattern to construct a GObject with properties.static classNested classes/interfaces inherited from class OutputStream
OutputStream.OutputStream$Impl, OutputStream.OutputStreamClassNested classes/interfaces inherited from class GObject
GObject.NotifyCallback, GObject.ObjectClassNested classes/interfaces inherited from interface Seekable
Seekable.Seekable$Impl, Seekable.SeekableIface -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new FileOutputStream.FileOutputStream(MemorySegment address) Create a FileOutputStream instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected FileOutputStreamasParent()Return this instance as if it were its parent type.static FileOutputStream.Builder<? extends FileOutputStream.Builder> builder()AFileOutputStream.Builderobject constructs aFileOutputStreamwith the specified properties.@Nullable StringgetEtag()Gets the entity tag for the file when it has been written.static MemoryLayoutThe memory layout of the native struct.static @Nullable TypegetType()Get the GType of the FileOutputStream class.queryInfo(String attributes, @Nullable Cancellable cancellable) Queries a file output stream for the givenattributes.This function blocks while querying the stream.voidqueryInfoAsync(String attributes, int ioPriority, @Nullable Cancellable cancellable, @Nullable AsyncReadyCallback callback) Asynchronously queries the this FileOutputStream for aGFileInfo.queryInfoFinish(AsyncResult result) Finalizes the asynchronous query started by g_file_output_stream_query_info_async().protected booleantruncateFn(long size, @Nullable Cancellable cancellable) Methods inherited from class OutputStream
clearPending, close, closeAsync, closeFinish, closeFn, flush, flushAsync, flushFinish, hasPending, isClosed, isClosing, printf, setPending, splice, splice, spliceAsync, spliceAsync, spliceFinish, write, writeAll, writeAllAsync, writeAllFinish, writeAsync, writeBytes, writeBytesAsync, writeBytesFinish, writeFinish, writev, writevAll, writevAllAsync, writevAllFinish, writevAsync, writevFinishMethods inherited from class GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newv, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref, withPropertiesMethods inherited from class TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class ProxyInstance
equals, handle, hashCodeMethods inherited from class Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface AutoCloseable
close
-
Constructor Details
-
FileOutputStream
Create a FileOutputStream instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
FileOutputStream
public FileOutputStream()Create a new FileOutputStream.
-
-
Method Details
-
getType
Get the GType of the FileOutputStream class.- Returns:
- the GType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Return this instance as if it were its parent type. Comparable to the Javasuperkeyword, but ensures the parent typeclass is also used in native code.- Overrides:
asParentin classOutputStream- Returns:
- the instance as if it were its parent type
-
getEtag
Gets the entity tag for the file when it has been written. This must be called after the stream has been written and closed, as the etag can change while writing.- Returns:
- the entity tag for the stream.
-
queryInfo
public FileInfo queryInfo(String attributes, @Nullable Cancellable cancellable) throws GErrorException Queries a file output stream for the given
attributes.This function blocks while querying the stream. For the asynchronous version of this function, see g_file_output_stream_query_info_async(). While the stream is blocked, the stream will set the pending flag internally, and any other operations on the stream will fail withIOErrorEnum.PENDING.Can fail if the stream was already closed (with
errorbeing set toIOErrorEnum.CLOSED), the stream has pending operations (witherrorbeing set toIOErrorEnum.PENDING), or if querying info is not supported for the stream's interface (witherrorbeing set toIOErrorEnum.NOT_SUPPORTED). In all cases of failure,nullwill be returned.If
cancellableis notnull, then the operation can be cancelled by triggering the cancellable object from another thread. If the operation was cancelled, the errorIOErrorEnum.CANCELLEDwill be set, andnullwill be returned.- Parameters:
attributes- a file attribute query string.cancellable- optionalGCancellableobject,nullto ignore.- Returns:
- a
GFileInfofor thestream,ornullon error. - Throws:
GErrorException- seeGError
-
queryInfoAsync
public void queryInfoAsync(String attributes, int ioPriority, @Nullable Cancellable cancellable, @Nullable AsyncReadyCallback callback) Asynchronously queries the this FileOutputStream for a
GFileInfo. When completed,callbackwill be called with aGAsyncResultwhich can be used to finish the operation with g_file_output_stream_query_info_finish().For the synchronous version of this function, see g_file_output_stream_query_info().
- Parameters:
attributes- a file attribute query string.ioPriority- the I/O priority of the requestcancellable- optionalGCancellableobject,nullto ignore.callback- callback to call when the request is satisfied
-
queryInfoFinish
Finalizes the asynchronous query started by g_file_output_stream_query_info_async().- Parameters:
result- aGAsyncResult.- Returns:
- A
GFileInfofor the finished query. - Throws:
GErrorException- seeGError
-
truncateFn
- Throws:
GErrorException
-
builder
AFileOutputStream.Builderobject constructs aFileOutputStreamwith the specified properties. Use the variousset...()methods to set properties, and finish construction withFileOutputStream.Builder.build().- Returns:
- the builder object
-