QFileInfo Class
QFileInfo クラスは、ファイル・システム・エントリーの情報を取得するための OS に依存しない API を提供します。詳細...
ヘッダー | #include <QFileInfo> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
- 継承メンバを含む全メンバ一覧
- QFileInfo はInput/Output and NetworkingandImplicitly Shared Classes に含まれます。
このクラスは等価比較可能です。
注意:このクラスの関数はすべてリエントラントです。
パブリック関数
QFileInfo() | |
QFileInfo(const QFileDevice &file) | |
QFileInfo(const QString &path) | |
(since 6.0) | QFileInfo(const std::filesystem::path &file) |
QFileInfo(const QDir &dir, const QString &path) | |
(since 6.0) | QFileInfo(const QDir &dir, const std::filesystem::path &path) |
QFileInfo(const QFileInfo &fileinfo) | |
~QFileInfo() | |
QDir | absoluteDir() const |
QString | absoluteFilePath() const |
QString | absolutePath() const |
QString | baseName() const |
QDateTime | birthTime() const |
(since 6.6) QDateTime | birthTime(const QTimeZone &tz) const |
QString | bundleName() const |
bool | caching() const |
QString | canonicalFilePath() const |
QString | canonicalPath() const |
QString | completeBaseName() const |
QString | completeSuffix() const |
QDir | dir() const |
bool | exists() const |
QString | fileName() const |
QString | filePath() const |
QDateTime | fileTime(QFileDevice::FileTime time) const |
(since 6.6) QDateTime | fileTime(QFileDevice::FileTime time, const QTimeZone &tz) const |
(since 6.0) std::filesystem::path | filesystemAbsoluteFilePath() const |
(since 6.0) std::filesystem::path | filesystemAbsolutePath() const |
(since 6.0) std::filesystem::path | filesystemCanonicalFilePath() const |
(since 6.0) std::filesystem::path | filesystemCanonicalPath() const |
(since 6.0) std::filesystem::path | filesystemFilePath() const |
(since 6.2) std::filesystem::path | filesystemJunctionTarget() const |
(since 6.0) std::filesystem::path | filesystemPath() const |
(since 6.6) std::filesystem::path | filesystemReadSymLink() const |
(since 6.0) std::filesystem::path | filesystemSymLinkTarget() const |
QString | group() const |
uint | groupId() const |
bool | isAbsolute() const |
(since 6.4) bool | isAlias() const |
bool | isBundle() const |
bool | isDir() const |
bool | isExecutable() const |
bool | isFile() const |
bool | isHidden() const |
bool | isJunction() const |
bool | isNativePath() const |
bool | isReadable() const |
bool | isRelative() const |
bool | isRoot() const |
bool | isShortcut() const |
bool | isSymLink() const |
bool | isSymbolicLink() const |
bool | isWritable() const |
(since 6.2) QString | junctionTarget() const |
QDateTime | lastModified() const |
(since 6.6) QDateTime | lastModified(const QTimeZone &tz) const |
QDateTime | lastRead() const |
(since 6.6) QDateTime | lastRead(const QTimeZone &tz) const |
bool | makeAbsolute() |
QDateTime | metadataChangeTime() const |
(since 6.6) QDateTime | metadataChangeTime(const QTimeZone &tz) const |
QString | owner() const |
uint | ownerId() const |
QString | path() const |
bool | permission(QFileDevice::Permissions permissions) const |
QFileDevice::Permissions | permissions() const |
(since 6.6) QString | readSymLink() const |
void | refresh() |
void | setCaching(bool enable) |
void | setFile(const QString &path) |
(since 6.0) void | setFile(const std::filesystem::path &path) |
void | setFile(const QFileDevice &file) |
void | setFile(const QDir &dir, const QString &path) |
qint64 | size() const |
(since 6.0) void | stat() |
QString | suffix() const |
void | swap(QFileInfo &other) |
QString | symLinkTarget() const |
QFileInfo & | operator=(QFileInfo &&other) |
QFileInfo & | operator=(const QFileInfo &fileinfo) |
静的パブリックメンバ
bool | exists(const QString &path) |
関連非会員
QFileInfoList | |
bool | operator!=(const QFileInfo &lhs, const QFileInfo &rhs) |
bool | operator==(const QFileInfo &lhs, const QFileInfo &rhs) |
マクロ
(since 6.0) | QT_IMPLICIT_QFILEINFO_CONSTRUCTION |
詳細説明
QFileInfo は、ファイルシステムエントリに関する情報 (名前、パス、アクセス権、通常のファイル、ディレクトリ、シンボリックリンクかどうかなど) を提供します。エントリのサイズや最終更新/読み込み時間も取得できます。QFileInfo は、Qtリソースに関する情報を取得するためにも使用できます。
QFileInfo は、絶対パスまたは相対パスでファイルシステムのエントリを指すことができます:
- Unix では、絶対パスはディレクトリ区切り文字
'/'
で始まります。Windows では、絶対パスはドライブ指定(例えばD:/
)で始まります。 - 相対パスは、ディレクトリ名または通常のファイル名で始まり、現在の作業ディレクトリからの相対パスでファイル・システム・エントリを指定します。
絶対パスの例は、文字列"/tmp/quartz"
です。相対パスは"src/fatlib"
のようになります。関数isRelative() を使用して、QFileInfo が相対パスと絶対パスのどちらを使用しているかを確認できます。関数makeAbsolute() を呼び出すと、相対 QFileInfo のパスを絶対パスに変換できます。
注意: コロン (:) で始まるパスは、QResource を示すため、常に絶対パスと見なされます。
QFileInfo が動作するファイル・システム・エントリ・パスは、コンストラクタで設定するか、または後でsetFile() を使用して設定します。エントリが実際に存在するかどうかを確認するにはexists() を使用し、サイズを取得するにはsize() を使用します。
ファイル・システム・エントリの型は、isFile()、isDir()、isSymLink() で取得できる。symLinkTarget() 関数は、シンボリックリンクが指すターゲットの絶対パスを提供する。
ファイル・システム・エントリのパス要素は、path() およびfileName() で抽出できる。fileName() の部分は、baseName()、suffix()、またはcompleteSuffix() で抽出できます。Qt クラスによって作成されたディレクトリを参照する QFileInfo オブジェクトは、末尾のディレクトリ区切り文字'/'
を持ちません。独自のファイル情報オブジェクトで末尾のセパレータを使用したい場合は、コンストラクタまたはsetFile() で指定されたエントリのパスにセパレータを追加してください。
日付と時刻に関連する情報は、birthTime(),fileTime(),lastModified(),lastRead(),metadataChangeTime() で返される。アクセス権限に関する情報は、isReadable()、isWritable()、isExecutable() で取得できる。所有権情報は、owner ()、ownerId ()、group ()、groupId ()で取得できる。また、permission() 関数を使用すると、1 つの文で権限と所有権を調べることもできる。
シンボリックリンクとショートカット
Unix(macOSとiOSを含む)では、このクラスのプロパティ・ゲッター関数は、シンボリックリンクではなく、ターゲットの時間やサイズなどのプロパティを返します。QFile を使用してシンボリックリンクを開くと、リンクのターゲットが効果的に開きます。例えば
#ifdef Q_OS_UNIX QFileInfo info1("/home/bob/bin/untabify"); info1.isSymLink(); // returns true info1.absoluteFilePath(); // returns "/home/bob/bin/untabify" info1.size(); // returns 56201 info1.symLinkTarget(); // returns "/opt/pretty++/bin/untabify" QFileInfo info2(info1.symLinkTarget()); info2.isSymLink(); // returns false info2.absoluteFilePath(); // returns "/opt/pretty++/bin/untabify" info2.size(); // returns 56201 #endif
Windowsでは現在、ショートカット(.lnk
ファイル)はシンボリックリンクとして扱われます。Unix システムと同様に、プロパティ・ゲッターは.lnk
ファイルそのものではなく、ターゲットのサイズを返します。この動作は非推奨であり、Qt の将来のバージョンで削除される可能性があります。その後、.lnk
ファイルは通常のファイルとして扱われます。
#ifdef Q_OS_WIN QFileInfo info1("C:\\Users\\Bob\\untabify.lnk"); info1.isSymLink(); // returns true info1.absoluteFilePath(); // returns "C:/Users/Bob/untabify.lnk" info1.size(); // returns 63942 info1.symLinkTarget(); // returns "C:/Pretty++/untabify" QFileInfo info2(info1.symLinkTarget()); info2.isSymLink(); // returns false info2.absoluteFilePath(); // returns "C:/Pretty++/untabify" info2.size(); // returns 63942 #endif
NTFSパーミッション
NTFS ファイルシステムでは、パフォーマンス上の理由から、所有権とパーミッションのチェックはデフォルトでは無効になっています。これを有効にするには、以下の行を記述する:
extern Q_CORE_EXPORT int qt_ntfs_permission_lookup;
その後、qt_ntfs_permission_lookup
を 1 ずつインクリメント/デクリメントすることで、パーミッション・チェックのオン/オフを切り替える。
qt_ntfs_permission_lookup++; // turn checking on qt_ntfs_permission_lookup--; // turn it off again
注意: これは非原子のグローバル変数なので、qt_ntfs_permission_lookup
をインクリメントまたはデクリメントするのは、メインスレッド以外のスレッドが開始する前か、メインスレッド以外のすべてのスレッドが終了した後にするのが安全である。
注意: Qt 6.6以降、変数qt_ntfs_permission_lookup
は非推奨です。以下の代替を使用してください。
パーミッションチェックを安全かつ簡単に管理する方法は、RAII クラスQNtfsPermissionCheckGuard
を使用することです。
void complexFunction() { QNtfsPermissionCheckGuard permissionGuard; // check is enabled // do complex things here that need permission check enabled } // as the guard goes out of scope the check is disabled
より細かい制御が必要な場合は、代わりに以下の関数でパーミッションを管理することが可能です:
qAreNtfsPermissionChecksEnabled();// ステータスをチェックするqEnableNtfsPermissionChecks(); // turn checking on qDisableNtfsPermissionChecks(); // turn it off again
パフォーマンスに関する考慮事項
QFileInfoの関数の中には、ファイル・システムにクエリを発行する必要があるものもありますが、パフォーマンス上の理由から、パス文字列のみを操作する関数もあります。例えば相対エントリのパスの絶対パスを返すには、absolutePath() はファイル・システムに問い合わせる必要があります。しかし、path() 関数はファイル名を直接操作できるため、より高速です。
QFileInfo は、参照先のファイル・システム・エントリに関する情報もキャッシュします。ファイル・システムは、他のユーザーやプログラム、あるいは同じプログラムの他の部分によって変更される可能性があるため、QFileInfoに格納されている情報を更新する関数、すなわちrefresh ()が用意されています。QFileInfoのキャッシュをオフにする(つまり、QFileInfoに情報を要求するたびに、その下にあるファイル・システムに問い合わせるようにする)には、setCaching (false)を呼び出します。
ファイル・システムからの情報の取得は通常、(おそらく)高価なシステム関数を呼び出すことによって行われるため、QFileInfoは(実装によっては)構築時にファイル・システムからすべての情報を取得しない場合があります。すべての情報がファイル・システムから直ちに読み込まれるようにするには、stat() メンバ関数を使用します。
birthTime(),fileTime(),lastModified(),lastRead(),metadataChangeTime() は、デフォルトで現地時間の時刻を返す。ネイティブ・ファイル・システム API は通常 UTC を使用するため、変換が必要です。ローカル時間を実際に必要としない場合は、QTimeZone::UTC の時刻を直接要求することで、これを避けることができる。
プラットフォーム固有の問題
Androidでは、コンテンツURIを扱う際にいくつかの制限が適用されます:
- Androidのネイティブファイルピッカーを実装しているQFileDialog 、ユーザーにアクセス許可を求める必要があるかもしれません。
- 他の公開外部ディレクトリの代わりにアプリ固有のディレクトリを使用するなど、Scopedストレージのガイドラインに従うことを目指してください。詳しくは、ストレージのベストプラクティスを参照してください。
- Qt API(QFile など)の設計上、Qt API と Android のMediaStoreAPI を完全に統合することはできません。
メンバ関数のドキュメント
QFileInfo::QFileInfo()
ファイル・システム・エントリを参照しない空の QFileInfo オブジェクトを構築します。
setFile()も参照してください 。
[explicit]
QFileInfo::QFileInfo(const QFileDevice &file)
ファイルfile に関する情報を提供する新しい QFileInfo を構築します。
file が相対パスの場合、QFileInfo も相対パスになります。
isRelative()も参照してください 。
[explicit]
QFileInfo::QFileInfo(const QString &path)
path にあるファイル・システム・エントリに関する情報を提供する QFileInfo を構築します。 は、絶対パスまたは相対パスを指定できます。
path が相対パスの場合、QFileInfo も相対パスになります。
setFile()、isRelative()、QDir::setCurrent() およびQDir::isRelativePath()も参照してください 。
[since 6.0]
QFileInfo::QFileInfo(const std::filesystem::path &file)
与えられたfile に関する情報を与える新しい QFileInfo を構築します。
この関数は Qt 6.0 で導入されました。
setFile(),isRelative(),QDir::setCurrent(),QDir::isRelativePath()も参照してください 。
[explicit]
QFileInfo::QFileInfo(const QDir &dir, const QString &path)
与えられたファイル・システム・エントリpath に関する情報を与える新しい QFileInfo を構築します。この情報は、ディレクトリdir からの相対パスです。
dir が相対パスの場合、QFileInfo も相対パスになります。
path が絶対パスの場合、dir で指定されたディレクトリは無視されます。
isRelative()も参照してください 。
[since 6.0]
QFileInfo::QFileInfo(const QDir &dir, const std::filesystem::path &path)
新しい QFileInfo を構築します。この QFileInfo は、ディレクトリdir からの相対パスを持つpath のファイル・システム・エントリに関する情報を提供します。
dir が相対パスの場合、QFileInfo も相対パスになります。
path が絶対パスの場合、dir で指定されたディレクトリは無視されます。
この関数は Qt 6.0 で導入されました。
QFileInfo::QFileInfo(const QFileInfo &fileinfo)
与えられたfileinfo のコピーである新しい QFileInfo を構築する。
[noexcept]
QFileInfo::~QFileInfo()
QFileInfo を破壊し、資源を解放する。
QDir QFileInfo::absoluteDir() const
このQFileInfo が参照するファイルシステムエントリーの親ディレクトリの絶対パスを表すQDir オブジェクトを返します。
// 現在の作業ディレクトリが "/home/user/Documents/memos/" の場合QFileInfoinfo1(u"relativeFile"_s);qDebug() << info1.absolutePath(); // "/home/user/Documents/memos/" qDebug() << info1.baseName(); // "relativeFile" qDebug() << info1.absoluteDir(); // QDir(u"/home/user/Documents/memos"_s) qDebug() << info1.absoluteDir().path(); // "/home/user/Documents/memos" // ディレクトリのQFileInfoQFileInfoinfo2(u"/home/user/Documents/memos"_s);qDebug() << info2.absolutePath(); // "/home/user/Documents" qDebug() << info2.baseName(); // "memos" qDebug() << info2.absoluteDir(); // QDir(u"/home/user/Documents"_s) qDebug() << info2.absoluteDir().path(); // "/home/user/Documents"
dir ()、filePath ()、fileName ()、isRelative ()も参照のこと 。
QString QFileInfo::absoluteFilePath() const
このQFileInfo が参照するファイルシステム・エントリーの絶対フルパス (エントリー名も含む) を返します。
Unix では、絶対パスはディレクトリ区切り文字'/'
で始まります。Windows では、絶対パスはドライブ指定 (D:/
など) で始まります。
Windows では、ドライブ文字にマップされていないネットワーク共有のパスは、//sharename/
で始まる。
QFileInfo はドライブ文字を大文字にします。ただし、 ではこのようなことは行われません。以下のコード・スニペットはこれを示している。QDir
この関数は、isRelative ()が真でない限り、filePath ()と同じものを返す。canonicalFilePath() とは対照的に、シンボリックリンクや冗長な "." や ".." 要素は必ずしも削除されない。
警告: filePath() が空の場合、この関数の動作は未定義である。
filePath()、canonicalFilePath()、isRelative()も参照 。
QString QFileInfo::absolutePath() const
このQFileInfo が参照するファイルシステムエントリーの絶対パスを、エントリー名を除いて返す。
Unix では、絶対パスはディレクトリ区切り文字'/'
で始まります。Windows では、絶対パスはドライブ指定(たとえばD:/
)で始まります。
Windows では、ドライブ文字にマップされていないネットワーク共有のパスは//sharename/
で始まる。
canonicalPath() とは対照的に、シンボリック・リンクや冗長な "." や ".." 要素は必ずしも削除されません。
警告: filePath() が空の場合、この関数の動作は未定義である。
absoluteFilePath()、path()、canonicalPath()、fileName()、isRelative()も参照 。
QString QFileInfo::baseName() const
ファイルのベース名をパスなしで返す。
ベース名は、ファイルの最初の文字 '.' までのすべての文字で構成されます。
例
例: ファイルのベース名は、ファイルの命名規則とは無関係に、すべてのプラットフォームで等しく計算されます(例えば、Unix上の".bashrc "は空のベース名を持ち、接尾辞は "bashrc "です)。
fileName()、suffix()、completeSuffix()、completeBaseName()も参照のこと 。
QDateTime QFileInfo::birthTime() const
ファイルが作成(誕生)された日時をローカルタイムで返す。
ファイルの誕生時刻が利用できない場合、この関数は無効なQDateTime を返します。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は、QFileInfo::birthTime(constQTimeZone &tz)をオーバーロードし、birthTime(QTimeZone::LocalTime)
と同じものを返します。
lastModified(),lastRead(),metadataChangeTime(),fileTime()も参照してください 。
[since 6.6]
QDateTime QFileInfo::birthTime(const QTimeZone &tz) const
ファイルが作成された(生まれた)日時を返す。
返される時刻は、tz で指定されたタイムゾーンになります。たとえば、QTimeZone::LocalTime またはQTimeZone::UTC を使用すると、それぞれローカルタイムゾーンまたは UTC での時刻を取得できます。ネイティブ・ファイル・システムAPIは通常UTCを使用するので、QTimeZone::UTC を使用すると、変換が不要なため、多くの場合より速くなります。
ファイルの誕生時刻が利用できない場合、この関数は無効なQDateTime を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は Qt 6.6 で導入されました。
lastModified(const QTimeZone &),lastRead(const QTimeZone &),metadataChangeTime(const QTimeZone &),fileTime(QFileDevice::FileTime, const QTimeZone &)も参照してください 。
QString QFileInfo::bundleName() const
バンドルの名前を返します。
macOS と iOS では、パスがisBundle() の場合、バンドルの適切なローカライズ名を返します。その他のプラットフォームでは、空のQString が返されます。
例
isBundle(),filePath(),baseName(),suffix()も参照 ください。
bool QFileInfo::caching() const
キャッシュが有効な場合はtrue
を返し、そうでない場合はfalse
を返す。
setCaching() およびrefresh()も参照 。
QString QFileInfo::canonicalFilePath() const
つまり、シンボリックリンクや'.'
や'..'
などの冗長な要素を含まない絶対パスとなります。
エントリが存在しない場合は、 canonicalFilePath() は空の文字列を返します。
filePath()、absoluteFilePath()、dir()も参照 。
QString QFileInfo::canonicalPath() const
ファイルシステムのエントリの正規パス (エントリ名を除く)、 つまりシンボリックリンクや "." や "..." 要素を含まない絶対パスを返します。
エントリが存在しない場合は、このメソッドは空の文字列を返します。
path() およびabsolutePath()も参照 ください。
QString QFileInfo::completeBaseName() const
ファイルの完全なベース名を、パスなしで返す。
完全なベース名は、ファイル内の最後の'.' 文字までのすべての文字で構成されます (最後の文字は含まれません)。
例
fileName()、suffix()、completeSuffix()、baseName()も参照 。
QString QFileInfo::completeSuffix() const
ファイルの完全なサフィックス(拡張子)を返します。
完全なサフィックスは、ファイル内の最初の '.' 以降 (ただし '.' は含まない) のすべての文字で構成されます。
例
fileName()、suffix()、baseName()、completeBaseName()も参照のこと 。
QDir QFileInfo::dir() const
このQFileInfo が参照するファイル・システム・エントリーの親ディレクトリのパスを表すQDir オブジェクトを返します。
以下のそれぞれについて、dir() はQDir "~/examples/191697"
を返す。
QFileInfo fileInfo1("~/examples/191697/."); QFileInfo fileInfo2("~/examples/191697/.."); QFileInfo fileInfo3("~/examples/191697/main.cpp");
以下のそれぞれについて、dir() はQDir "."
を返す。
absolutePath()、filePath()、fileName()、isRelative()、absoluteDir()も参照 。
bool QFileInfo::exists() const
このQFileInfo が参照するファイル・システム・エントリが存在する場合はtrue
を返し、そうでない場合はfalse
を返す。
注意: エントリーが存在しないターゲットを指すシンボリックリンクの場合、このメソッドはfalse
を返す。
[static]
bool QFileInfo::exists(const QString &path)
ファイル・システム・エントリpath が存在する場合はtrue
を返し、存在しない場合はfalse
を返す。
注意: path が存在しないターゲットを指すシンボリックリンクの場合、このメソッドはfalse
を返す。
注意 :この関数を使用すると、ファイル・システム・アクセスにQFileInfo(path).exists()
を使用するよりも高速になる。
QString QFileInfo::fileName() const
このQFileInfo が参照するファイルシステム・エントリーの名前を、パスを除いて返します。
例
注意: このQFileInfo にディレクトリ区切り文字'/'
で終わるパスが指定された場合、 エントリの名前部分は空であるとみなされる。
isRelative()、filePath()、baseName()、suffix()も参照 。
QString QFileInfo::filePath() const
このQFileInfo が参照するファイル・システム・エントリのパスを返す。パスは、絶対パスでも相対パスでもよい。
absoluteFilePath()、canonicalFilePath()、isRelative()も参照 。
QDateTime QFileInfo::fileTime(QFileDevice::FileTime time) const
time で指定されたファイル時刻を返す。
時刻が特定できない場合は、無効な日付時刻が返される。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は、QFileInfo::fileTime(QFileDevice::FileTime, const QTimeZone &) をオーバーロードし、fileTime(time, QTimeZone::LocalTime)
と同じものを返します。
birthTime(),lastModified(),lastRead(),metadataChangeTime()も参照してください 。
[since 6.6]
QDateTime QFileInfo::fileTime(QFileDevice::FileTime time, const QTimeZone &tz) const
time で指定されたファイル時刻を返す。
返される時刻は、tz で指定されたタイムゾーンの時刻である。たとえば、QTimeZone::LocalTime またはQTimeZone::UTC を使用すると、それぞれローカルタイムゾーンまたは UTC の時刻を取得できます。ネイティブ・ファイル・システムAPIは通常UTCを使用するため、QTimeZone::UTC を使用すると、変換が不要なため、より高速になることが多い。
時刻を決定できない場合、無効な日付時刻が返される。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は Qt 6.6 で導入されました。
birthTime(const QTimeZone &),lastModified(const QTimeZone &),lastRead(const QTimeZone &),metadataChangeTime(const QTimeZone &),QDateTime::isValid()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemAbsoluteFilePath() const
std::filesystem::path
としてabsoluteFilePath() を返します。
この関数は Qt 6.0 で導入されました。
absoluteFilePath()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemAbsolutePath() const
std::filesystem::path
としてabsolutePath() を返します。
この関数は Qt 6.0 で導入されました。
absolutePath()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemCanonicalFilePath() const
std::filesystem::path
としてcanonicalFilePath() を返します。
この関数は Qt 6.0 で導入されました。
canonicalFilePath()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemCanonicalPath() const
std::filesystem::path
としてcanonicalPath() を返します。
この関数は Qt 6.0 で導入されました。
canonicalPath()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemFilePath() const
std::filesystem::path
としてfilePath() を返します。
この関数は Qt 6.0 で導入されました。
filePath()も参照してください 。
[since 6.2]
std::filesystem::path QFileInfo::filesystemJunctionTarget() const
std::filesystem::path
としてjunctionTarget() を返す。
この関数は Qt 6.2 で導入されました。
junctionTarget()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemPath() const
std::filesystem::path
としてpath() を返します。
この関数は Qt 6.0 で導入されました。
path()も参照してください 。
[since 6.6]
std::filesystem::path QFileInfo::filesystemReadSymLink() const
std::filesystem::path
としてreadSymLink() を返す。
この関数は Qt 6.6 で導入されました。
readSymLink()も参照してください 。
[since 6.0]
std::filesystem::path QFileInfo::filesystemSymLinkTarget() const
std::filesystem::path
としてsymLinkTarget() を返します。
この関数は Qt 6.0 で導入されました。
symLinkTarget()も参照してください 。
QString QFileInfo::group() const
ファイルのグループを返します。Windowsでは、ファイルがグループを持っていないシステム、またはエラーが発生した場合、空の文字列が返される。
Unixでは、この関数は時間がかかることがある(ミリ秒単位)。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットの情報を返す。
groupId()、owner()、ownerId()も参照のこと 。
uint QFileInfo::groupId() const
ファイルが属するグループの ID を返します。
Windowsやファイルがグループを持たないシステムでは、この関数は常に(uint) -2を返します。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返す。
group()、owner()、ownerId()も参照のこと 。
bool QFileInfo::isAbsolute() const
ファイルシステム・エントリーのパスが絶対パスである場合はtrue
を返し、そうでない場合はfalse
を返す(つまり、パスは相対パスである)。
注意: コロン (:) で始まるパスは、QResource を表すため、常に絶対パスとみなされます。
isRelative()も参照 。
[since 6.4]
bool QFileInfo::isAlias() const
このオブジェクトがエイリアスを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
エイリアスはmacOS上にのみ存在する。エイリアスは通常のファイルと同じように扱われるため、エイリアスを開くとそのファイル自体が開かれます。エイリアスが参照するファイルやディレクトリを開くには、symLinkTarget ()を使用する。
注意: エイリアスが存在しないファイルを指している場合でも、isAlias()はtrueを返します。
この関数は Qt 6.4 で導入されました。
isFile(),isDir(),isSymLink(),symLinkTarget()も参照してください 。
bool QFileInfo::isBundle() const
このオブジェクトがバンドル、または macOS と iOS のバンドルへのシンボリックリンクを指している場合はtrue
を返し、そうでない場合はfalse
を返します。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
isDir(),isSymLink(),isFile()も参照してください 。
bool QFileInfo::isDir() const
このオブジェクトがディレクトリまたはディレクトリへのシンボリックリンクを指している場合はtrue
を返す。オブジェクトがディレクトリでないもの(ファイルなど)を指しているか、存在しない場合はfalse
を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットの情報を返します。
isFile()、isSymLink()、isBundle()も参照 。
bool QFileInfo::isExecutable() const
このQFileInfo が参照するファイル・システム・エントリーが実行可能な場合はtrue
を返し、そうでない場合はfalse
を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返す。
isReadable()、isWritable()、permission()も参照 。
bool QFileInfo::isFile() const
このオブジェクトがファイルまたはファイルへのシンボリックリンクを指している場合はtrue
を返す。オブジェクトがファイルでないもの(ディレクトリなど)を指しているか、存在しない場合はfalse
を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットの情報を返します。
isDir()、isSymLink()、isBundle()も参照 。
bool QFileInfo::isHidden() const
このQFileInfo が参照するファイル・システム・エントリーが `hidden' の場合はtrue
を返し、そうでない場合はfalse
を返す。
注意:この関数は、QDir::entryList が示すように扱っているにもかかわらず、Unix上の特別なエントリー "." と ".." に対してtrue
を返す。また、この関数はファイル名を検査するので、Unix上では、このファイルがシンボリックリンクの場合、ターゲットの名前ではなく、シンボリックリンクの名前を検査することに注意。
Windowsでは、この関数はターゲット・ファイルが(シンボリックリンクではなく)隠されている場合、true
を返します。
bool QFileInfo::isJunction() const
オブジェクトがジャンクションを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
ジャンクションはWindowsのNTFSファイルシステム上にのみ存在し、通常mklink
コマンドで作成される。これはディレクトリのシンボリックリンクと考えることができ、ローカルボリューム上の絶対パスに対してのみ作成することができます。
bool QFileInfo::isNativePath() const
ファイルパスがネイティブ API で直接使用できる場合はtrue
を返します。ファイルが QtResource System などの Qt 内部の仮想ファイルシステムでサポートされている場合はfalse
を返します。
注意:ネイティブパスは、プラットフォームやネイティブAPIの入力要件によっては、パス区切り文字や文字エンコーディングの変換が必要な場合があります。
QDir::toNativeSeparators(),QFile::encodeName(),filePath(),absoluteFilePath(),canonicalFilePath()も参照してください 。
bool QFileInfo::isReadable() const
このQFileInfo が参照するファイル・システム・エントリーをユーザーが読める場合はtrue
を返し、そうでない場合はfalse
を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返す。
注意: NTFS permissions 検査が有効になっていない場合、Windows での結果は単にエントリが存在するかどうかを反映したものになる。
isWritable()、isExecutable()、permission()も参照のこと 。
bool QFileInfo::isRelative() const
ファイルシステム・エントリーのパスが相対パスの場合はtrue
を返し、そうでない場合はfalse
を返す (つまり、パスは絶対パスである)。
Unix では、絶対パスはディレクトリ区切り文字'/'
で始まる。Windows では、絶対パスはドライブ指定(たとえばD:/
)で始まります。
注意: コロン(:)で始まるパスは、QResource を示すため、常に絶対パスとみなされます。
isAbsolute()も参照してください 。
bool QFileInfo::isRoot() const
オブジェクトがディレクトリまたはディレクトリへのシンボリックリンクを指し、そのディレクトリがルートディレクトリである場合はtrue
を返し、そうでない場合はfalse
を返す。
bool QFileInfo::isShortcut() const
このオブジェクトがショートカットを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
ショートカットはWindows上にのみ存在し、通常.lnk
ファイルである。例えば、Windows上のショートカット(*.lnk
ファイル)に対してはtrueが返されますが、Unix(macOSやiOSを含む)に対してはfalseが返されます。
ショートカット(.lnk)ファイルは通常のファイルとして扱われます。これらを開くと、.lnk
ファイル自体が開きます。ショートカットが参照するファイルを開くには、ショートカット上でsymLinkTarget ()を使用する必要があります。
注意: ショートカット(壊れたショートカット)が存在しないファイルを指していても、isShortcut()はtrueを返します。
isFile()、isDir()、isSymbolicLink()、symLinkTarget()も参照 。
bool QFileInfo::isSymLink() const
このオブジェクトがシンボリックリンク、ショートカット、またはエイリアスを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
シンボリックリンクはUnix(macOSとiOSを含む)とWindowsに存在し、それぞれ通常ln -s
またはmklink
コマンドで作成されます。シンボリックリンクを開くと、実質的にlink's target を開くことになる。
また、Windowsではショートカット(*.lnk
ファイル)、macOSではエイリアスに対してtrueが返されます。この動作は非推奨であり、Qt の将来のバージョンで変更される可能性があります。ショートカットまたはエイリアスを開くと、.lnk
またはエイリアスファイル自体が開きます。
例
QFileInfo info(fileName); if (info.isSymLink()) fileName = info.symLinkTarget();
注: exists() は、シンボリックリンクが既存のターゲットを指している場合はtrue
を返し、そうでない場合はfalse
を返します。
isFile()、isDir()、symLinkTarget()も参照してください 。
bool QFileInfo::isSymbolicLink() const
このオブジェクトがシンボリックリンクを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
シンボリックリンクはUnix(macOSとiOSを含む)とWindows(NTFS-symlink)に存在し、通常それぞれln -s
、mklink
コマンドで作成される。
Unixはシンボリックリンクを透過的に扱います。シンボリックリンクを開くと、事実上、link's target を開くことになる。
isSymLink() とは対照的に、Windows のショートカット (*.lnk
ファイル) や macOS のエイリアスでは false が返される。代わりにQFileInfo::isShortcut() とQFileInfo::isAlias() を使用してください。
注意: exists() は、シンボリックリンクが既存のターゲットを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
isFile()、isDir()、isShortcut()、symLinkTarget()も参照 。
bool QFileInfo::isWritable() const
ユーザーがこのQFileInfo が参照するファイル・システム・エントリに書き込み可能な場合はtrue
を返し、そうでない場合はfalse
を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返す。
注意: NTFS permissions 検査が有効になっていない場合、Windows での結果は、単にエントリが読み取り専用とマークされているかどうかを反映したものになる。
isReadable()、isExecutable()、permission()も参照のこと 。
[since 6.2]
QString QFileInfo::junctionTarget() const
NTFS ジャンクションをそれが参照するパスに解決します。
NTFS ジャンクションが指すディレクトリへの絶対パスを返すか、 オブジェクトが NTFS ジャンクションでない場合は空文字列を返します。
NTFS ジャンクションが指すディレクトリが実際に存在する保証はありません。
この関数は Qt 6.2 で導入されました。
isJunction(),isFile(),isDir(),isSymLink(),isSymbolicLink(),isShortcut()も参照してください 。
QDateTime QFileInfo::lastModified() const
ファイルが最後に変更された日時を返します。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は、QFileInfo::lastModified(const QTimeZone &) をオーバーロードし、lastModified(QTimeZone::LocalTime)
と同じものを返します。
birthTime()、lastRead()、metadataChangeTime()、fileTime()も参照してください 。
[since 6.6]
QDateTime QFileInfo::lastModified(const QTimeZone &tz) const
ファイルが最後に変更された日時を返す。
返される時刻は、tz で指定されたタイムゾーンになります。たとえば、QTimeZone::LocalTime またはQTimeZone::UTC を使用すると、それぞれローカルタイムゾーンまたは UTC での時刻を取得できます。ネイティブ・ファイル・システムAPIは通常UTCを使用するので、QTimeZone::UTC を使用した方が変換が不要なため、高速になることが多い。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は Qt 6.6 で導入されました。
birthTime(const QTimeZone &),lastRead(const QTimeZone &),metadataChangeTime(const QTimeZone &),fileTime(QFileDevice::FileTime, const QTimeZone &)も参照してください 。
QDateTime QFileInfo::lastRead() const
ファイルが最後に読み込まれた(アクセスされた)日時を返す。
この情報が利用できないプラットフォームでは、lastModified() と同じ時刻を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は、QFileInfo::lastRead(const QTimeZone &) をオーバーロードし、lastRead(QTimeZone::LocalTime)
と同じ時刻を返します。
birthTime()、lastModified()、metadataChangeTime()、fileTime()も参照してください 。
[since 6.6]
QDateTime QFileInfo::lastRead(const QTimeZone &tz) const
ファイルが最後に読み込まれた(アクセスされた)日時を返す。
返される時刻は、tz で指定したタイムゾーンの時刻である。たとえば、QTimeZone::LocalTime またはQTimeZone::UTC を使用すると、それぞれローカルタイムゾーンまたは UTC での時刻を取得できます。ネイティブ・ファイル・システムAPIは通常UTCを使用するため、QTimeZone::UTC を使用すると、変換が不要であるため、高速になることが多い。
この情報が利用できないプラットフォームでは、lastModified ()と同じ時刻を返す。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は Qt 6.6 で導入されました。
birthTime(const QTimeZone &),lastModified(const QTimeZone &),metadataChangeTime(const QTimeZone &),fileTime(QFileDevice::FileTime, const QTimeZone &)も参照してください 。
bool QFileInfo::makeAbsolute()
ファイル・システム・エントリーのパスが相対パスの場合、このメソッドはそれを絶対パスに変換し、true
を返す。パスがすでに絶対パスの場合、このメソッドはfalse
を返す。
filePath() およびisRelative()も参照のこと 。
QDateTime QFileInfo::metadataChangeTime() const
ファイルのメタデータが最後に変更された日時をローカルタイムで返します。
メタデータの変更は、ファイルが最初に作成されたときに発生しますが、ユーザが inode 情報を書き込んだり設定したりするときにも発生します (たとえば、ファイルのパーミッションを変更するなど)。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は、QFileInfo::metadataChangeTime(constQTimeZone &tz)をオーバーロードし、metadataChangeTime(QTimeZone::LocalTime)
と同じものを返します。
birthTime(),lastModified(),lastRead(),fileTime()も参照してください 。
[since 6.6]
QDateTime QFileInfo::metadataChangeTime(const QTimeZone &tz) const
ファイルのメタデータが最後に変更された日時を返す。メタデータの変更は、ファイルが最初に作成されたときに発生するが、ユーザーがinode情報を書き込んだり設定したりするときにも発生する(例えば、ファイルのパーミッションを変更する)。
返される時刻は、tz で指定されたタイムゾーンになります。たとえば、QTimeZone::LocalTime またはQTimeZone::UTC を使用すると、それぞれローカルタイムゾーンまたは UTC での時刻を取得できます。ネイティブ・ファイル・システムAPIは通常UTCを使用するため、QTimeZone::UTC を使用すると、変換が不要であるため、高速になることが多い。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
この関数は Qt 6.6 で導入されました。
birthTime(const QTimeZone &),lastModified(const QTimeZone &),lastRead(const QTimeZone &),fileTime(QFileDevice::FileTime time, const QTimeZone &)も参照してください 。
QString QFileInfo::owner() const
ファイルの所有者を返す。ファイルに所有者がいないシステム、またはエラーが発生した場合は、空の文字列が返される。
この関数はUnixでは時間がかかることがある(ミリ秒単位)。Windowsでは、NTFS permissions チェックが有効になっていない限り、空文字列が返される。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットの情報を返す。
ownerId()、group()、groupId()も参照のこと 。
uint QFileInfo::ownerId() const
ファイルの所有者の ID を返します。
Windows や、ファイルに所有者がいないシステムでは、この関数は ((uint) -2) を返します。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返す。
owner()、group()、groupId()も参照のこと 。
QString QFileInfo::path() const
QFileInfo が参照するファイルシステムエントリのパスを、エントリ名を除いて返す。
注意: このQFileInfo にディレクトリ区切り文字'/'
で終わるパスが指定された場合、エントリの名前部分は空であるとみなされる。この場合、この関数はパス全体を返します。
filePath()、absolutePath()、canonicalPath()、dir()、fileName()、isRelative()も参照 。
bool QFileInfo::permission(QFileDevice::Permissions permissions) const
ファイルのパーミッションをテストする。permissions 引数には、パーミッションの組み合わせをチェックするために、QFile::Permissions 型の複数のフラグを OR したものを指定することができます。
ファイルにパーミッションがないシステムでは、この関数は常にtrue
を返します。
注意: NTFS permissions チェックが有効になっていない場合、Windows では結果が不正確になる可能性があります。
例
QFileInfofi("/tmp/archive.tar.gz");if(fi.permission(QFile::WriteUser|QFile::ReadGroup)) qWarning("I can change the file; my group can read the file"); if(fi.permission(QFile::書き込みグループQFile::WriteOther)) qWarning("The group or others can change the file");
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットの情報を返す。
isReadable()、isWritable()、isExecutable()も参照 。
QFileDevice::Permissions QFileInfo::permissions() const
ファイルに対する QFile::Permissions の完全な OR 組合せを返します。
注意: NTFS permissions のチェックが有効になっていない場合、Windows では結果が不正確になる可能性があります。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットに関する情報を返します。
[since 6.6]
QString QFileInfo::readSymLink() const
シンボリックリンクが参照しているパスを読み込む。
シンボリックリンクを含むディレクトリからの相対パスを解決せずに、 シンボリックリンクが参照している生のパスを返します。返される文字列は、シンボリックリンクが実際に参照する場合にのみ絶対パスになります。オブジェクトがシンボリックリンクでない場合は、空の文字列を返します。
この関数は Qt 6.6 で導入されました。
symLinkTarget(),exists(),isSymLink(),isDir(),isFile()も参照してください 。
void QFileInfo::refresh()
QFileInfo つまり、キャッシュされたプロパティが次にフェッチされるときに、ファイルシステムから情報を読み込みます。
void QFileInfo::setCaching(bool enable)
enable がtrueの場合、ファイル情報のキャッシュを有効にする。enable が偽の場合、キャッシュは無効になる。
キャッシングが有効な場合、QFileInfo はファイル・システムからファイル情報を最初に読み込むが、通常はそれ以降は読み込まない。
キャッシュはデフォルトで有効になっている。
refresh() およびcaching()も参照のこと 。
void QFileInfo::setFile(const QString &path)
このQFileInfo が情報を提供するファイル・システム・エントリーのパスを、絶対パスでも相対パスでもよいpath に設定する。
Unix では、絶対パスはディレクトリ区切り文字'/'
で始まります。Windows では、絶対パスはドライブ指定(たとえばD:/
)で始まります。
相対パスは、ディレクトリ名または通常のファイル名で始まり、現在の作業ディレクトリからの相対的なファイル・システム・エントリのパスを指定します。
例
QFileInfo info("/usr/bin/env"); QString path = info.absolutePath(); // path = /usr/bin QString base = info.baseName(); // base = env info.setFile("/etc/hosts"); path = info.absolutePath(); // path = /etc base = info.baseName(); // base = hosts
isFile()、isRelative()、QDir::setCurrent()、QDir::isRelativePath()も参照 。
[since 6.0]
void QFileInfo::setFile(const std::filesystem::path &path)
このQFileInfo が情報を提供するファイル・システム・エントリーのパスをpath に設定する。
path が相対パスの場合、QFileInfo も相対パスになります。
この関数は Qt 6.0 で導入されました。
void QFileInfo::setFile(const QFileDevice &file)
これはオーバーロードされた関数である。
QFileInfo が情報を提供するファイルをfile に設定する。
file に相対パスが含まれている場合、QFileInfo にも相対パスが設定されます。
isRelative()も参照してください 。
void QFileInfo::setFile(const QDir &dir, const QString &path)
これはオーバーロードされた関数である。
このQFileInfo が情報を提供するファイルシステムエントリのパスを、ディレクトリdir のpath に設定する。
dir が相対パスの場合、QFileInfo も相対パスになります。
path が絶対パスの場合、dir で指定されたディレクトリは無視される。
isRelative()も参照のこと 。
qint64 QFileInfo::size() const
ファイル・サイズをバイト数で返す。ファイルが存在しないか、取得できない場合は0が返される。
ファイルがシンボリックリンクの場合、この関数はシンボリックリンクではなくターゲットの情報を返す。
exists()も参照 。
[since 6.0]
void QFileInfo::stat()
ファイルシステムから全ての属性を読み込みます。
これは、ファイルシステムに関する情報をワーカースレッドで収集し、QFileInfo インスタンスをキャッシュする形で UI に渡す場合に便利です。
この関数は Qt 6.0 で導入されました。
setCaching() およびrefresh()も参照してください 。
QString QFileInfo::suffix() const
ファイルのサフィックス(拡張子)を返します。
接尾辞は、ファイル内の最後の「.」以降のすべての文字で構成されます (最後の「.」は含まれません)。
例
例: ファイルの接尾辞は、ファイルの命名規則とは無関係に、すべてのプラットフォームで等しく計算されます (たとえば、Unix の ".bashrc" は空のベース名を持ち、接尾辞は "bashrc" です)。
fileName()、completeSuffix()、baseName()、completeBaseName()も参照のこと 。
[noexcept]
void QFileInfo::swap(QFileInfo &other)
このファイル情報をother と交換する。この操作は非常に速く、失敗することはない。
QString QFileInfo::symLinkTarget() const
シンボリックリンクが指すファイルまたはディレクトリへの絶対パス、またはオブジェクトがシンボリックリンクでない場合は空の文字列を返します。
この名前は既存のファイルを表すことはなく、単なる文字列である。
注意: exists() は、シンボリックリンクが既存のターゲットを指している場合はtrue
を返し、そうでない場合はfalse
を返す。
exists()、isSymLink()、isDir()、isFile()も参照 。
[noexcept]
QFileInfo &QFileInfo::operator=(QFileInfo &&other)
Move-other をこのQFileInfo インスタンスに割り当てる。
QFileInfo &QFileInfo::operator=(const QFileInfo &fileinfo)
与えられたfileinfo のコピーを作成し、このQFileInfo に割り当てる。
関連する非会員
QFileInfoList
[noexcept]
bool operator!=(const QFileInfo &lhs, const QFileInfo &rhs)
QFileInfo lhs がrhs が参照するファイルシステム・エントリと異なるファイルシステム・エントリを参照する場合はtrue
を返し、そうでない場合はfalse
を返す。
operator==()も参照のこと 。
[noexcept]
bool operator==(const QFileInfo &lhs, const QFileInfo &rhs)
QFileInfo lhs とQFileInfo rhs がファイルシステム上の同じエントリーを参照している場合はtrue
を返し、そうでない場合はfalse
を返す。
ファイルシステムのエントリ参照(存在しないパスや空のパス)を含まない空のQFileInfo オブジェクト同士を比較した結果は、未定義であることに注意。
警告: これは、同じターゲットを指す2つの異なるシンボリックリンクを比較しません。
警告 Windows では、同じファイルシステム・エントリを参照する長いパスと短いパスは、 異なるエントリを参照するものとして扱われる。
operator!=()も参照のこと 。
マクロ・ドキュメント
[since 6.0]
QT_IMPLICIT_QFILEINFO_CONSTRUCTION
このマクロを定義すると、ほとんどのQFileInfo コンストラクタが明示的ではなく暗黙的になる。QFileInfo オブジェクトの作成にはコストがかかるため、特に安価な代替手段が存在する場合は、誤って作成しないようにすべきである。例えば
QDirIterator it(dir); while (it.hasNext()) { // Implicit conversion from QString (returned by it.next()): // may create unnecessary data structures and cause additional // accesses to the file system. Unless this macro is defined, // this line does not compile. QFileInfo fi = it.next(); ~~~ }
代わりに正しいAPIを使用する:
QDirIterator it(dir); while (it.hasNext()) { // Extract the QFileInfo from the iterator directly: QFileInfo fi = it.nextFileInfo(); ~~~ }
QString やQFile などからの構築は、コピー初期化ではなく直接初期化を使用すれば常に可能である:
QFileInfo fi1 = some_string; // Does not compile unless this macro is defined QFileInfo fi2(some_string); // OK QFileInfo fi3{some_string}; // Possibly better, avoids the risk of the Most Vexing Parse auto fi4 = QFileInfo(some_string); // OK
このマクロは互換性のために提供されている。このマクロは互換性のために提供されています。
このマクロは Qt 6.0 で導入されました。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.