QGIS API Documentation 3.29.0-Master (ade4f0cf0f)
qgsfileutils.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsfileutils.h
3 ---------------------------
4 begin : November 2017
5 copyright : (C) 2017 by Etienne Trimaille
6 email : etienne dot trimaille at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSFILEUTILS_H
19#define QGSFILEUTILS_H
20
21#include "qgis_core.h"
22#include "qgis_sip.h"
23#include "qgis.h"
24#include <QString>
25
32class CORE_EXPORT QgsFileUtils
33{
34 public:
35
39 static QString representFileSize( qint64 bytes );
40
41
49 static QStringList extensionsFromFilter( const QString &filter );
50
57 static QString wildcardsFromFilter( const QString &filter );
58
67 static bool fileMatchesFilter( const QString &fileName, const QString &filter );
68
80 static QString ensureFileNameHasExtension( const QString &fileName, const QStringList &extensions );
81
93 static QString addExtensionFromFilter( const QString &fileName, const QString &filter );
94
101 static QString stringToSafeFilename( const QString &string );
102
109 static QString findClosestExistingPath( const QString &path );
110
121 static QStringList findFile( const QString &file, const QString &basepath = QString(), int maxClimbs = 4, int searchCeiling = 4, const QString &currentDir = QString() );
122
130 static Qgis::DriveType driveType( const QString &path ) SIP_THROW( QgsNotSupportedException );
131
138 static bool pathIsSlowDevice( const QString &path );
139
156 static QSet< QString > sidecarFilesForPath( const QString &path );
157
181 static bool renameDataset( const QString &oldPath, const QString &newPath, QString &error SIP_OUT, Qgis::FileOperationFlags flags = Qgis::FileOperationFlag::IncludeMetadataFile | Qgis::FileOperationFlag::IncludeStyleFile );
182
192 static int openedFileLimit() SIP_SKIP;
193
203 static int openedFileCount() SIP_SKIP;
204
216 static bool isCloseToLimitOfOpenedFiles( int filesToBeOpened = 1 ) SIP_SKIP;
217
226 static QStringList splitPathToComponents( const QString &path );
227};
228
229#endif // QGSFILEUTILS_H
DriveType
Drive types.
Definition: qgis.h:506
@ IncludeMetadataFile
Indicates that any associated .qmd metadata file should be included with the operation.
@ IncludeStyleFile
Indicates that any associated .qml styling file should be included with the operation.
Class for file utilities.
Definition: qgsfileutils.h:33
Custom exception class which is raised when an operation is not supported.
Definition: qgsexception.h:118
#define SIP_SKIP
Definition: qgis_sip.h:126
#define SIP_OUT
Definition: qgis_sip.h:58
#define SIP_THROW(name,...)
Definition: qgis_sip.h:198