0

アプリ フォルダーに json ファイルをダウンロードしました。アプリ フォルダーからそのファイルを読み取って、特定の値を出力したいと考えています。

ファイルは次のように配置されています。/var/mobile/Containers/Data/Application/63E66EE9-9A1B-4D4D-AEF6-F8C54D159ED0/Library/NoCloud/MyApp/MyFolder/DTS.json

[{"value":0}] ただし、以下で説明したように、ファイルの内容はコンソールで読み取られて出力されますが、特定の値を読み取ると null が返されます

NSURL *libraryDirURL = [[NSFileManager.defaultManager URLsForDirectory:NSLibraryDirectory inDomains:NSUserDomainMask] lastObject];
NSURL *urlDTSK = [libraryDirURL URLByAppendingPathComponent:@"NoCloud/MyApp/MyFolder/DTS.json"];
NSString *filePathDTS = [NSString stringWithContentsOfURL:urlDTSK encoding:NSUTF8StringEncoding error:nil];
NSLog(@"This is Dts PATH %@", filePathDTS);
NSData *dataDTS = [NSData dataWithContentsOfFile:filePathDTS];
NSLog(@"here is DTS data  %@", dataDTS); //this shows null
NSDictionary *jsonDTS = [NSJSONSerialization JSONObjectWithData:dataDTS options:kNilOptions error:nil];
NSLog(@"here is jason DTS %@", jsonDTS);
NSMutableArray *DTSvalue = [jsonDTS valueForKeyPath: @"Value"];
DTSValueIs = DTSvalue[0];
NSLog(@"here is DTS Value first%@", DTSvalue[0]);
NSLog(@"here is DTS value is%@", DTSValueIs);

これはThis is Dts contents [{"value":0}] 2018-06-11 17:04:40.940006+0500 Muslims 365[3356:819935] here is DTS data (null)

4

3 に答える 3

1

ライブラリlibraryDirURLへのパスも同様です。次にurlDTSK、ライブラリ内の特定のファイルへのパスです。次にfilePathDTS、UTF8文字列としてライブラリ内のそのファイルの内容です...

ただしdataDTS、 file at に書き込まれた場所のファイルの内容ですfilePathDTS。コードは次のようにする必要があります。

NSData *dataDTS = [NSData dataWithContentsOfFile: urlDTSK.path];
于 2018-06-11T10:07:30.693 に答える