簡體   English   中英

如何在 C++ 中更改文本文件的名稱

[英]How to change a text file's name in C++

我想更改一個txt文件的名稱,但我找不到如何做到這一點。

例如,我想在我的 C++ 程序中將foo.txt重命名為boo.txt

#include <stdio.h> (或<cstdio> )並使用rename (或std::rename ):

rename("oldname.txt", "newname.txt");

與普遍的看法相反,它包含在標准庫中,並且在一定程度上是可移植的——當然,字符串的允許內容會隨着目標系統的不同而變化。

文件系統支持是 C++ 標准庫中明顯沒有 . 正如 Jerry Coffin 的回答所示,實際上在 stdio 中有一個重命名 function (與我分享的普遍看法相反)。 然而,標准庫沒有涵蓋許多與文件系統相關的設備,因此存在 Boost::Filesystem(特別是操作目錄和檢索有關文件的信息)。

這是一個設計決策,以使 C++ 的約束更少(即可以在各種平台上編譯,包括不存在文件概念的嵌入式系統)。

要執行文件操作,有兩種選擇:

  • 使用目標操作系統的API

  • 使用提供跨平台統一接口的庫

Boost::Filesystem就是這樣的 C++ 庫,它抽象了平台差異。

您可以使用Boost::Filesystem::rename 重命名文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM