JSON-gegevens ophalen als NSString geen geheel getal?

De onderstaande code werkt alleen als mijn JSON-gegevens een reeks gehele getallen zijn, bijvoorbeeld [11,12,13]. Hoe kon ik het krijgen om een ​​bericht/zin op te halen?

- (IBAction)checkmessages:(id)sender
{
        responseData = [[NSMutableData data] retain];       
        NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"file:///Users/Alex/Desktop/Test.json"]];
        [[NSURLConnection alloc] initWithRequest:request delegate:self];
    }
}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {      
    [connection release];

    NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
    [responseData release];

    NSError *error;
    SBJSON *json = [[SBJSON new] autorelease];
    NSArray *luckyNumbers = [json objectWithString:responseString error:&error];
    [responseString release];   

    if (luckyNumbers == nil)
        label.text = [NSString stringWithFormat:@"JSON parsing failed: %@", [error localizedDescription]];
    else {      
        NSMutableString *text = [NSMutableString stringWithString:@"Latest Message:\n"];

        for (int i = 0; i < [luckyNumbers count]; i++) 
            [text appendFormat:@"%@\n", [luckyNumbers objectAtIndex:i]];

        label.text =  text;
    }
}

BEWERK: Wanneer mijn JSON-bestand er als volgt uitziet: [10,11,12], werkt het prima, maar als ik dit wijzig in: [Message 1, Message 2], krijg ik de foutmelding: "JSON Parsing Failed: verwachte waarde tijdens array parsing"

0
Ik neem aan dat er ook enkele citaten ontbreken, namelijk: ["message 1", "message 2"]
toegevoegd de auteur Mic, de bron
Blij dat het was :), ik heb het als antwoord toegevoegd.
toegevoegd de auteur Mic, de bron
Welk probleem heb je? Hoe faalt het als de JSON-gegevens terugkomen als een tekenreeks?
toegevoegd de auteur Mark Adams, de bron
Wanneer mijn JSON-bestand er als volgt uitziet: [10,11,12], werkt het prima, maar als ik dit wijzig in: [Message 1, Message 2], krijg ik de foutmelding: "JSON Parsing Failed: verwachte waarde tijdens array parsing"
toegevoegd de auteur iMinichrispy, de bron
Ja! Bedankt, dat werkte.
toegevoegd de auteur iMinichrispy, de bron

2 antwoord

Uw JSON ziet er misvormd uit,

 [Message 1,Message 2]

zou moeten zijn

 ["Message 1", "Message 2"]
1
toegevoegd

"Strings" in JSON moeten tussen aanhalingstekens staan ​​( "" ).

0
toegevoegd