【问题标题】:In C++ can you output a file to a user specified directory?在 C++ 中,您可以将文件输出到用户指定的目录吗?
【发布时间】:2013-10-27 00:31:35
【问题描述】:

我只是在做一些工作,整个 ofstream 文件(“C:\mydir\blahblah\blah.txt”)看起来相当僵硬。

有没有办法让用户 cin 一个目录?最近我已经掌握了让用户使用 .c_str() 定义文件名本身,所以它只是一个级别吗?或者考虑到我所处的新手阶段,对目录进行硬编码会更容易满足吗?无论哪种方式,这都是值得研究的有趣代码。

【问题讨论】:

  • 你能再具体一点吗?您是在问 C++ 等价于更改目录吗?您必须对其进行硬编码,或者允许用户将其提供给您。您显然可以在代码中将“目录名”与“文件名”连接起来。这就是你要问的吗?请澄清。
  • 使用带有 argc 和 argv 的 main,您可以获得可执行文件本身的路径,然后您可以从中追加或减去。您可能对相对路径感兴趣。如果您使用的是 fstream 库之类的东西,您可以将相对路径传递给打开和关闭函数:ifile.open("../common/text.txt");

标签: c++ iostream fstream user-defined


【解决方案1】:

是的,你可以让用户进入一个目录。当你打开文件时,你只需要提供一个字符串——不管它是硬编码到程序中,在命令行输入(并从argv读取),还是在运行时输入,都没有真正的区别用户。

请注意,如果您使用反斜杠将目录名称硬编码到源代码中,则需要将每个反斜杠加倍,因此问题中的名称应为 c:\\mydir\\blahblahblah\\blah.txt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-10
    • 1970-01-01
    • 2015-05-07
    • 2011-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多