【问题标题】:File creation in C++ on Xcode在 Xcode 上使用 C++ 创建文件
【发布时间】:2012-12-15 10:47:51
【问题描述】:

这应该在我的项目目录中创建一个名为“tuna.txt”的文件。当我运行它时,它编译成功,但是没有创建文件。我在使用 xcode 的 Mac 上。我已经在我的计算机上搜索了可能已创建它的其他地方,但似乎根本没有创建该文件。关于为什么它不起作用的任何想法?

#include <iostream>
#include <fstream>
using namespace std;
int main(void){
    ofstream file;
    file.open("tuna.txt");

    file << "I love tuna and tuna loves me!\n";
    file.close();
    return 0;
}

【问题讨论】:

  • 你真的需要学习如何使用调试器。

标签: c++ xcode macos file


【解决方案1】:

我向您保证,除非错误(您没有检查),否则会创建一个文件。从 IDE 运行时,Xcode 倾向于使用最终的 build-dir 作为当前工作目录。您可以通过编辑活动方案来更改此设置。

  1. 单击主工具栏上 STOP 按钮右侧的项目框
  2. 选择编辑方案
  3. 在左侧窗格列表中选择“运行”子方案。
  4. 选择选项选项卡,
  5. 选中“使用自定义工作目录”复选框
  6. 将工作目录设置为您知道的某个位置(例如您的项目根文件夹)。

注意:如果您愿意,您还可以在此处设置任何命令行参数(位于“参数”选项卡上,而不是“选项”选项卡上)。

【讨论】:

    【解决方案2】:

    Products 文件夹中(在 Xcode IDE 左侧 Navigator 选项卡的 Project Navigator 中),您将找到可执行文件。点击可执行文件。

    如果尚未显示,请确保已显示 Xcode IDE 右侧的 Utilities 选项卡并选择了显示文件检查器。 p>

    inspector,你会看到Full Path显示了可执行文件的路径,在它的最后,会有一个箭头。单击此箭头将打开 Finder 窗口到该位置,在这里您还应该看到所有文本文件和从程序中创建的其他文件。

    PS。使用搜索时找不到 tuna.txt 文件的原因是它与可执行文件一起位于隐藏文件夹中。

    【讨论】:

    • 您将在以下位置找到该文件:/Users/[USERNAME/Library/Developer/Xcode/DerivedData/[PROJECT NAME] 进入上述文件夹后,使用 Finder 的搜索功能查找文件。
    【解决方案3】:

    首先你必须检查文件是否为opened/created。然后你应该搜索文件。很可能该文件尚未创建。代码如下:

    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main(void){
    
    ofstream file;
    file.open("tuna.txt");
    if(file.is_open())
    {
       file << "I love tuna and tuna loves me!\n";
        file.close();
    }
    else
       cout<< "No file has been created!\n";
    
      return 0;
    }
    

    由于您没有给出打开函数的绝对路径。请查看您的代码文件所在的文件夹。文件很可能会在那里。

    【讨论】:

      猜你喜欢
      • 2017-11-19
      • 2013-10-26
      • 2010-09-12
      • 2011-07-26
      • 1970-01-01
      • 2014-03-16
      • 1970-01-01
      • 1970-01-01
      • 2021-02-17
      相关资源
      最近更新 更多