Ios 将ASCII符号附加到字符串

Ios 将ASCII符号附加到字符串,ios,objective-c,Ios,Objective C,我有一个十六进制字符串和一个ASCII码0x1111。 如何在字符串的结尾/开头附加ASCII代码以查看此代码的符号 NSString* some = @"some"; 请注意,NSStrings是不可变的–您需要创建一个NSMutableString来追加内容。mutableCopy方法非常方便 NSMutableString的appendFormat:或appendString:方法可以追加到末尾。格式字符串类似于传统的printf(3)C函数(添加了用于插入Obj-C对象的%@) 另一种

我有一个十六进制字符串和一个ASCII码
0x1111
。 如何在字符串的结尾/开头附加ASCII代码以查看此代码的符号

NSString* some = @"some";

请注意,
NSString
s是不可变的–您需要创建一个
NSMutableString
来追加内容。
mutableCopy
方法非常方便

NSMutableString
appendFormat:
appendString:
方法可以追加到末尾。格式字符串类似于传统的
printf(3)
C函数(添加了用于插入Obj-C对象的
%@

另一种方法是从格式字符串创建新的
NSString
。这可能是最简单的

NSString *some = @"some";
NSString *stringWithPrependedCharacter = [NSString stringWithFormat:@"%c%@", 0x41, some];

您也可以使用下面的方法

用于在开头追加数据:

NSString *some = @"some";
char newCharacter = 0x41;
NSString *some = [NSString stringwithformat:@"%c%@",newCharacter,some];
NSString *some = @"some";
char newCharacter = 0x41;
NSString *some = [NSString stringwithformat:@"%@%c",some,newCharacter];
用于在末尾追加数据:

NSString *some = @"some";
char newCharacter = 0x41;
NSString *some = [NSString stringwithformat:@"%c%@",newCharacter,some];
NSString *some = @"some";
char newCharacter = 0x41;
NSString *some = [NSString stringwithformat:@"%@%c",some,newCharacter];

正如注释
0x1111
中已经讨论的,它不是ASCII字符,但更可能是UTF-16字符

您可以从原始字符串和字符串创建新的
NSString

NSString *some = @"some";
NSString *combined = [some stringByAppendingString:@"\u1111"];
或者您可以将其附加到
NSMutableString

NSString *some = @"some";
NSMutableString *str = [NSMutableString new];
[str appendString:some];
[str appendString:@"\u1111"];
如果字符不同,则可以使用以下方法将其从字符转换为
NSString
对象:

unichar input = 0x1111;
NSString *str = [NSString stringWithCharacters:&input
                                        length:1];
并如上所述附加它。

最简单的方法:

NSString *some = @"some";
some = [[@"@\u1111" stringByAppendingString:some] stringByAppendingString:@"@\u1111"];
NSLog(@"Some: %@", some);
返回:

Some: @ᄑsome@ᄑ

0x1111不是ASCII代码。ASCII代码仅从0x00到0x7f。请澄清您实际拥有什么。这是什么类型的ASCII值?ASCII是一种7位编码
0x1111
是两个字节。未获取问题我的错误,不是ascii符号。但是我需要将
0x1111
附加到
@“一些
。0x1111没有意义。你需要知道它是什么编码。如果它不是ASCII码,那么它是什么?