C++のみを使用してiOSのDocumentsフォルダーへの参照を取得する方法があるかどうか疑問に思っています(つまり、Objective-Cでコードを使用せずに;これは、ライブラリとして追加できるC++でのみ実装されたフレームワークであるためです) iOS プロジェクトで)。
可能であれば、回答にコードを入力してください。
以下のコードを使用すると、アプリのキャッシュ フォルダーにアクセスできます。「/Library/Documents」のドキュメントフォルダーか、それ以外だと思います。
char *home = getenv("HOME");
char *subdir = "/Library/Caches/subdir";
home
+ subdir
= フルパス
次に、フル パスを指定すると、通常の C++ での読み取り/書き込みが可能になります。
はい、プレーンな Unix API にアクセスできます。AppleのiOS マンページはこちらを参照してください。
(Cocoa API を使用して) パスを取得し、 、 、 などの API を使用して C++ 文字列互換の表現に変換CFStringGetFileSystemRepresentation
し CFURLGetFileSystemRepresentation
ます-[NSString fileSystemRepresentation]
。
何かのようなもの:
// you may need to wrap this in an autorelease pool
NSArray * paths(NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES));
const char* const path([[paths objectAtIndex:0] fileSystemRepresentation]);
if (0 == fsrep) {
uh-oh
}
const std::string result(path);
次に、それを独自の ObjC++ 変換に入れresult
、関数から返すことができます (残りの C++ ソースから見えるようになります)。