[英]NSString @“\” adding backslash character objective-c
有没有人知道在Objective-C中向NSString
添加单个反斜杠( \\
)的简单方法? 我想要一个NSString *temp = @"\\/Date(100034234)\\/"
;
我能够获得双反斜杠或没有反斜杠,但无法得到一个反斜杠。 任何帮助,将不胜感激。 谢谢
字符串@"\\\\"
是单个反斜杠, @"\\\\\\\\"
是双反斜杠
字符串和NSLog对我来说很好(iPhone SDK 3.1.2和Xcode 3.2.1):
NSLog(@"\\"); // output is one backslash
NSLog(@"\\\\"); // output is two backslashes
NSLog(@"\\/Date(100034234)\\/"); // output is \/Date(100034234)\/
看到这个答案 。
此代码确实提供了请求的输出:
NSString *temp = @"\\/Date(100034234)\\/";
NSLog(@"%@",temp);
但是我的JSON工具包(SBJSON)存在问题,该问题用“\\\\\\\\”替换了所有“\\\\”的出现,这确实导致了其他答案和注释中描述的问题。
结果是一个字符串看起来像:
@"\\\\/Date(100034234)\\\\/"
在这里看到我的答案
解决方案是使用:
temp = [temp stringByReplacingOccurancesOfString:@"\\\\" withString:@"\\"];
这是NSLog中的一个错误。 我找到了一个邮件列表存档,其中有一条消息发布于2002年,其中有人在此处提交了一个错误。 该人还说:
据我所知,没有做任何事情。 我不明白他们是如何做到的,但转义对字符串有效,而不是NSLog。
所以我想如果你真的想要反斜杠,你将不得不想出自己的日志消息实现。
您想要\\添加或删除的位置。 就在那个地方。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.