1

オブジェクト (NSObject) を (NSData) にパックし、(NSASCIIStringEncoding) でエンコードして、次のコードで SQLite データベースに送信します。

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:canvasView.trazoYorch];

//convert NSData object to plain text for sending it to DB
NSData *data2 = [[NSString stringWithFormat:@"%@",data] dataUsingEncoding:NSASCIIStringEncoding];
NSString *dataStr = [[NSString alloc] initWithData:data2 encoding:NSASCIIStringEncoding];

すべて正常に動作しますが、逆プロセス NSString を NSData に実行したい場合、異なる結果が得られました。これは逆プロセスのコードです

NSString *FirmaString = [self traerFirmadeBD]; //returns the string content of DB       
NSData   *data2       = [FirmaString dataUsingEncoding:NSASCIIStringEncoding];
FirmaYorch *firmaCompleta = [NSKeyedUnarchiver unarchiveObjectWithData:data2];

これを解決する助けがあれば幸いです

4

0 に答える 0