0

Objective-c++ アプリケーションを作成していて、applicationsContentsフォルダーにアクセスしようとしています。

アプリ名を MyApp.app としましょう。Xcode からアプリケーションを実行すると、次のContentsようなフォルダーにアクセスできます。

std::fstream file;
file.open("MyApp.app/Contents/some_text_file.txt");
if(file.is_open()) {
...
}
else {
...
}

しかし、ビルドしたアプリケーションを Xcode なしで実行するとfile.is_open()失敗します。

4

2 に答える 2

3

[[NSBundle mainBundle] bundlePath]ディレクトリのパスが表示されますMyApp.appContentsその後、そのパスに追加できます。

または、ディレクトリ[[NSBundle mainBundle] resourcePath]へのパスを提供しますMyApp.app/Contents/Resources。その後、そのパスからサブディレクトリを削除できます。[[NSBundle mainBundle] resourcePath] からのパスの操作を参照してください。

于 2013-05-25T08:53:56.457 に答える
2

NSBundleクラスを使用して、アプリケーション バンドルに関する情報を取得します。[[NSBundle mainBundle] bundlePath] は、MyApp.app へのフル パスを提供します。

于 2013-05-25T09:00:10.683 に答える