Sono abbastanza sicuro di dover utilizzare NSMutableData per questo problema poiché accederò più volte all'oggetto e aggiungerò ogni sezione di dati una volta ottenuta.combina gli oggetti nsdata nell'oggetto nsmutabledata
Il problema che sto affrontando è che io voglia di creare un unico grande oggetto NSMutableData che verrà creato da diversi piccoli oggetti NSData che si aggiunge alla fine dei dati mutabili obiettano
Ho provato quanto segue .
MODIFICA: // Questo metodo ora funziona e accoda i dati come anche supposto.
- (void) constructRequest
{
NSData * protocolInt = [self addProtocolVersion];
NSMutableData * myMutableData = [[NSMutableData alloc] init];
NSData *first_data = [self addProSig]; //nsdata type
NSData *second_data = [self addAct]; //nsdata type
[myMutableData appendData:first_data];
[myMutableData appendData:second_data];
//etc
[protocolInt writeToFile:@"/Users/imac/Desktop/_dataDump.dat" atomically:YES];
}
Prima di tutto io non sono nemmeno sicuro se questo è il modo corretto di aggiungere dati, E 'solo che ho visto diversi esempi simili. Il problema principale è che sulle due linee qui
NSMutableData *first_data = [self addProSig]; //nsdata type
NSMutableData *second_data = [self addAct]; //nsdata type
ho avvertimenti su entrambe le linee
tipi di puntatore incompatibili inizializzazione 'NSMutableData * _strong' wuth un'espressione di tipo 'NSData *'
qualsiasi aiuto sarebbe apprezzato, anche possibili soluzioni migliori che quello che sto usando se ce ne sono.
Qual è la dichiarazione di metodo per la '' addProSig' e addAct'? Se restituiscono un 'NSData *', allora devi convertirlo in un 'NSMutableData *' facendo qualcosa come 'NSMutableData * mutDat = [[NSMutableData alloc] initWithLength: [immutData length]]; [mutDat setData: immutData]; 'dove' immutData' è un NSData immutabile *. – user1118321
L'ho capito. Stavo dichiarando in modo errato * first_data e * second_data. avrebbero dovuto essere NSData non NSMutableData .. mi dispiace per quello. –