[QGIS-it-user] deleteShapefile in pyqgis

pierluigi de rosa pierluigi.derosa a gmail.com
Gio 27 Gen 2022 01:25:01 PST


Buongiorno a tutti,

noto un comportamento strano in pyqgis nell'usare la funzione
QgsVectorFileWriter.deleteShapeFile(file_path)

di seguito il codice molto semplice che uso:

def removeLayer(path_layer):
    # remove layer from TOC if already loaded
    basefile = os.path.basename(path_layer)
    diff_layer = os.path.splitext(basefile)[0]
    directory = os.path.dirname(path_layer)
    extensions = ["shp", "shx", "dbf", "prj", "sbn", "sbx", "fbn",
"fbx", "ain", "aih", "ixs", "mxs", "atx", "xml",
                  "cpg", "qix"]
    output_path=path_layer
    if os.path.exists(path_layer):
        if len(QgsProject.instance().mapLayersByName(diff_layer)) > 0:
            lyr = QgsProject.instance().mapLayersByName(diff_layer)[0]
            print('renaming layer1: ', lyr.id())
            QgsProject.instance().removeMapLayer(lyr.id())

        QgsVectorFileWriter.deleteShapeFile(path_layer)

In sostanze se mando l'ultima riga dalla console python di QGIS cancello
correttamente lo shapefile. Internamente al mio codice rimane in cartella
il file .shp e .dbf che non vengono cancellati generandomi errori nella
parte seguente.

Qualcuno saprebbe dirmi dove sto sbagliando?
Grazie
P
-- 
Ing. Pierluigi De Rosa (PhD in Earth Science)
Contract Professor of Geographic Information System at University of Perugia
cel: 3497558268 / fax: 075 7823038
skype: pierluigi.derosa
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.osgeo.org/pipermail/qgis-it-user/attachments/20220127/59e42d45/attachment.html>


Maggiori informazioni sulla lista QGIS-it-user