Frage

Ich bin mir bewusst, diese Frage mehrmals gefragt worden, aber ich war nicht in der Lage eine definate Antwort zu finden, der meine Situation am besten passen würde.

Ich mag die Fähigkeit die Benutzer zu haben, um ein Bild aus der Bibliothek auswählen und dann wird das Bild in einen NSData Typ umgewandelt. Ich habe dann eine Anforderung, einen C # .NET Webservice über einen HTTP nennen so ideal bekommt Ich brauche die resultierende Zeichenfolge UTF8 codiert werden.

Das ist, was ich habe, so weit:

NSData *dataObj = UIImageJPEGRepresentation(selectedImage, 1.0);
    [picker dismissModalViewControllerAnimated:YES];
    NSString *content =  [[NSString alloc] initWithData:dataObj encoding:NSUTF8StringEncoding];
    NSLog(@"%@", content);

Die NSLog-Anweisung einfach erzeugt eine Ausgabe wie:

2009-11-29 14:13:33.937 TestUpload2[5735:207] (null)

Offensichtlich dies ist nicht, was ich zu erreichen hoffte, so dass jede Hilfe wäre toll.

Mit freundlichen Grüßen

War es hilfreich?

Lösung

Sie können keine UTF-8 kodierten String aus nur einer beliebigen binären Daten erstellen - die Daten tatsächlich UTF-8 codiert, und die Daten für die JPEG-Bild nicht offensichtlich ist sein muss. Ihre binären Daten stellen keine Zeichenfolge, so können Sie einen String aus nicht direkt erstellen -. -[NSString initWithData:encoding:] in geeigneter Weise in Ihrem Fall nicht

Sie verwenden NSURLConnection Angenommen (obwohl eine ähnliche Aussage sollte für andere Methoden wahr sein), werden Sie Ihre NSMutableURLRequest konstruieren und verwenden -setHTTPBody:, die Sie benötigen, um ein NSData Objekt zu übergeben. Ich verstehe nicht, warum du hier eine GET-Methode würde verwenden, da es klingt wie Sie das Hochladen diese Bilddaten zu Ihrem Web-Service zu fahren -. Sie sollten POST werden mit

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top