Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript window.open中的UTF8字符串将被UIWebview';s应该带着请求_Javascript_Objective C_Utf 8_Uiwebview - Fatal编程技术网

Javascript window.open中的UTF8字符串将被UIWebview';s应该带着请求

Javascript window.open中的UTF8字符串将被UIWebview';s应该带着请求,javascript,objective-c,utf-8,uiwebview,Javascript,Objective C,Utf 8,Uiwebview,在我的UIWebview中有一个带有JS的页面,它将向我的Obj C代码发送一些非英语文本。当我对Obj C代码中接收到的内容进行NSlog时,会得到乱码输出。有人能看出这里出了什么问题吗: JS代码: window.open("http://nothing.com?ST=nǐ",null); Obj C代码: - (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request naviga

在我的UIWebview中有一个带有JS的页面,它将向我的Obj C代码发送一些非英语文本。当我对Obj C代码中接收到的内容进行NSlog时,会得到乱码输出。有人能看出这里出了什么问题吗:

JS代码:

window.open("http://nothing.com?ST=nǐ",null);
Obj C代码:

- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {

   NSLog([[request URL] absoluteString]);
   return YES;

}
控制台输出:

=n㽲79

您使用字符串作为
NSLog()的格式。与

NSLog(@"%@", [[request URL] absoluteString]);
您将获得预期的输出

详细说明:ǐ的UTF-8序列是C7 90。
中的
[[request URL]absoluteString]
的内容应为

如果将此用作格式字符串,“%C”将替换为随机字符

要消除百分比逃逸,请使用

NSString *url = [[[request URL] absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

非常感谢。但它仍然不起作用。。。我现在越来越紧张了。现在的问题是,如何用UTF8十六进制代码%C7%组成NSString90@Amarsh当前位置我已在我的答案中添加了这一点。