好的,这是nsmutablestring
data = [NSMutableString stringWithFormat:@"&cb_games%5B%5D="];
现在,当我尝试打印或使用此字符串时,我得到大号而不是%5B和%5D不确定为什么会发生任何帮助都会受到侮辱
谢谢
答案 0 :(得分:4)
您获得意外输出的原因是'%'
在 printf 中用作 转换说明符 ,显然 NSLog 和 NSString 格式。如果您不希望将它解释为转换说明符,则需要转义'%'
。您可以通过将'%'
与'%'
之类的其他'%%'
一起转发来@"&cb_games%%5B%%5D="
。{/ 1}
你的字符串应该是,
{{1}}
@August Lilleaas的答案也值得注意。
答案 1 :(得分:2)
试试这个:
NSString * data = [NSMutableString stringWithFormat:@"&cb_games%%5B%%5D="];
NSLog(@"%@",data);
答案 2 :(得分:2)
stringWithFormat
基本上是printf
,它会尝试用您未提供的值替换您的百分比,这就是为什么会发生奇怪的事情。
[NSMutableString stringWithFormat:@"Hello: %d", 123];
// @"Hello: 123"
如果你想要一个字符串的可变字符串,试试这个:
[NSMutableString stringWithString:@"Abc %2 %3"];
// @"Abc %2 %3"
答案 3 :(得分:0)
%用于字符串格式化和填充。我想你需要逃避角色或其他东西,可能是斜线。
答案 4 :(得分:0)
你的意思是写吗?
data = [NSMutableString stringWithString@"&cb_games%5B%5D="]