Class: QgsVectorFileWriterTask

QgsTask task which performs a QgsVectorFileWriter layer saving operation as a background task.

This can be used to save a vector layer out to a file without blocking the QGIS interface.

Class Hierarchy

Inheritance diagram of qgis.core.QgsVectorFileWriterTask

Base classes

QgsTask

Abstract base class for long running background tasks.

QObject

Signals

errorOccurred

Emitted when an error occurs which prevented the file being written (or if the task is canceled).

writeComplete

Emitted when writing the layer is successfully completed.

class qgis.core.QgsVectorFileWriterTask[source]

Bases: QgsTask

__init__(layer: QgsVectorLayer | None, fileName: str | None, options: QgsVectorFileWriter.SaveVectorOptions, sinkFlags: QgsFeatureSink.SinkFlags | QgsFeatureSink.SinkFlag = QgsFeatureSink.SinkFlags())

Constructor for QgsVectorFileWriterTask. Takes a source layer, destination fileName and save options.

Since QGIS 3.40 the sinkFlags can be specified.

Parameters:
signal errorOccurred(error: int, errorMessage: str)[source]

Emitted when an error occurs which prevented the file being written (or if the task is canceled). The writing error and errorMessage will be reported.

Parameters:
  • error (int)

  • errorMessage (str)

signal writeComplete(newFilename: str)[source]

Emitted when writing the layer is successfully completed. The newFilename parameter indicates the file path for the written file.

Note

this signal is deprecated in favor of completed().

Parameters:

newFilename (str)