C での現在の作業ディレクトリの変更
ファイルや I/O を操作するときに、現在の作業ディレクトリを調整する必要がよく発生します。操作。 C は、std::filesystem::current_path 関数を使用することで、このタスクに対してプラットフォームに依存しないソリューションを提供します。
C 17 ソリューション: std::filesystem::current_path
C 17 では、std::filesystem ライブラリはファイル システム操作用のクロスプラットフォーム API を提供します。 std::filesystem::current_path 関数を使用すると、現在の作業ディレクトリの取得と設定の両方が可能になります。
例:
#include
int main() {
namespace fs = std::filesystem;
// Retrieve the current working directory
fs::path current_path = fs::current_path();
// Set the current working directory
fs::current_path(current_path / "new_directory");
}
この例では、まず current_path 関数を使用して現在の作業ディレクトリを取得し、それを fs::path オブジェクトに保存します。次に、この fs::path オブジェクトを使用して、現在の作業ディレクトリを新しいパス、この場合はサブディレクトリ "new_directory".
Compatibility
に設定します。 std::filesystem ライブラリは、C 17 以降で使用できます。古いバージョンの C では、Windows の direct.h や UNIX/POSIX システムの unistd.h など、プラットフォーム固有のオプションが利用可能です。ただし、これらのオプションには std::filesystem::current_path.
の移植性がありません。免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3