24

ファイル「file.txt」に文字列を書き込みたい: 私のプロジェクト (Iphone 用) のこのファイルはリソース内にあります。このファイルに文字列を書き込もうとしましたが、うまくいきません。コードを示します。

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath =  [documentsDirectory stringByAppendingPathComponent:@"file.txt"];
NSError *error;
[outputString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:&error];

デバイスではなく、シミュレーターのxcodeでこのファイルに書き込みたい

4

8 に答える 8

49

バンドルに書き込むことができるかどうかはわかりませんが、コードと同じように Documents ディレクトリに書き込むことができます。これを試してみませんか?

同じコードを使用すると、次の場所にファイルが見つかります。

/Users/ YOURUSER /Library/Application Support/iPhone Simulator/ IOSVERSION /Applications/ APPID /Documents/file.txt

于 2011-04-08T09:28:31.793 に答える
19

これは XCode 6 と iOS 6 で変更され、扱いにくくなりました。

ドキュメント ディレクトリは次の場所に隠されています。

~/Library/Developer/CoreSimulator/Devices/<some-id>/data/Containers/Data/Application/<some-other-id>

アプリケーションが起動するたびに場所が変わるようで、追跡するのは非常に困難です。この記事から借りた簡単なヒントがあり、怠惰な人のために含めます。

#if TARGET_IPHONE_SIMULATOR
// where are you?
NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);
#endif

たとえば、これをapplicationDidFinishLaunchingメソッドに追加すると、簡単になります!

もっと詳しく知りたい方は元記事をどうぞ

注意:質問が古いことは知っていますが、検索中に見つけたので、更新された回答を追加することで、一部の人に役立つと思います!

于 2014-12-07T18:21:26.620 に答える
15

シミュレーターでのアプリの Documents ディレクトリは次の場所にあります。

~/Library/Application Support/iPhone Simulator/YOUR-IOS-VERSION/Applications/UNIQUE-KEY-FOR-YOUR-APP/Documents
于 2011-04-08T09:29:18.317 に答える
8

アプリ内の任意のブレークポイントで停止し、デバッガーで「po NSHomeDirectory()」と入力します。Finder の [移動] > [フォルダへ移動] 機能を使用して、そこに直接ジャンプします。 どのように

于 2016-06-08T09:15:44.447 に答える
2

ここにあるサンプルコードでは、Resourcesフォルダーではなく、SimulatorのDocumentsフォルダーに書き込みます。これは、実際にはデバイスで書き込む必要がありますが、前述のように、シミュレーターでのみこれを実行する必要があります。 、使用できます

filePath = [[NSBundle mainBundle] bundlePath] stringByAppendingPathComnponent:@"Resources"]

ただし、配送アプリではこれを行わないでください。失敗します。

于 2011-04-08T09:34:00.200 に答える
1

これをターミナルに貼り付けます。

open ~/Library/Application\ Support/iPhone\ Simulator/
于 2014-01-16T16:05:01.463 に答える
0

gdb で、プロセスを停止して貼り付けると、ドキュメントの場所が出力されます。 [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]

 po [[[NSFileManager defaultManager] URLsForDirectory:9 inDomains:1] lastObject]
于 2015-01-27T07:29:10.420 に答える
0

Xcode 7 以降を使用している場合は、次の手順に従います。

ドキュメント ディレクトリ:

file:///Users/codercat/Library/Developer/CoreSimulator/Devices/YourProjectDict/data/Containers/Data/Application/(sample digit)7F53CFB3-C534-443F-B595-62619BA808F2/Documents/your file located here
于 2016-02-01T07:34:28.577 に答える