non ho potuto ottenere questo lavoro.
I dispone di una stringa HTML con
NON ROTTURA SPAZIO
</div>Great Guildford St/SouthwarkSt & nbsp;Stop:& nbsp; BM<br>Walk to SE1 0HL<br>
"Great Guildford St/SouthwarkSt \U00a0Stop:\U00a0 BM",
ho provato 3 tipi di codifica/decodifica
// NSData *asciiData = [instruction dataUsingEncoding:NSUTF16BigEndianStringEncoding];
// NSString *asciiString = [[NSString alloc] initWithData:asciiData
// encoding:NSUTF16BigEndianStringEncoding];
// NSData *asciiData = [instruction dataUsingEncoding:NSASCIIStringEncoding];
// NSString *asciiString = [[NSString alloc] initWithData:asciiData
// encoding:NSASCIIStringEncoding];
//little endian
NSData *asciiData = [instruction dataUsingEncoding:NSUTF16LittleEndianStringEncoding];
NSString *asciiString = [[NSString alloc] initWithData:asciiData
encoding:NSUTF16LittleEndianStringEncoding];
nessuno di questi ha lavorato. Sembravano a lavorare come se io NSLog la corda sembra ok
NSLog(@"HAS UNICODE :%@", instruction);
..do encode/decode
NSLog(@"UNICODE AFTER:%@", asciiString);
quale uscita
HAS UNICODE: St/SouthwarkSt Stop: BM
UNICODE AFTER: St/SouthwarkSt Stop: BM
ma mi è capitato di memorizzare questi in un NSArray e mi è capitato di chiamare [stringArray description]
e tutto l'unicode era ancora lì
instructionsArrayString: (
"Great Guildford St/SouthwarkSt \U00a0Stop:\U00a0 BM",
"Walk to SE1 0HL"
)
quindi qualcosa in NSLog nasconde
ma si presenta nella descrizione NSArray così si potrebbe pensare youve REMO vedendo l'Unicode quando non l'hai fatto.
Proverà un altro metodo che sostituisce i caratteri.
fonte
2010-11-07 15:40:32
tutti i caratteri sono unicode – user102008