Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.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
Ios NSURL对象值为空_Ios_Url - Fatal编程技术网

Ios NSURL对象值为空

Ios NSURL对象值为空,ios,url,Ios,Url,我正在生成一个由字符串参数给出的URL,但URL给出了null值。 为了生成URL,我实现了以下代码 NSURL *url = [[NSURL alloc] init]; NSString *strURL = @"ftp://Administrat:ABC(R%-@TRDOP@xx.xx.xx.xx/arrows.png"; url = [NSURL URLWithString:[NSString stringWithString:strURL]]; NSLog(@"URL :: %@"

我正在生成一个由字符串参数给出的URL,但URL给出了null值。 为了生成URL,我实现了以下代码

 NSURL *url = [[NSURL alloc] init];
 NSString *strURL = @"ftp://Administrat:ABC(R%-@TRDOP@xx.xx.xx.xx/arrows.png";
 url = [NSURL URLWithString:[NSString stringWithString:strURL]];
 NSLog(@"URL :: %@",url);

谢谢

请使用以下代码

NSString *sURL = @"ftp://www.jerox.com/Administrator:@123@TRDOP@%$/arrows.png";
NSURL *url = [[NSURL alloc] initWithString:[sURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSLog(@"URL :: %@",url);

使用以下代码

NSString *sURL = @"ftp://www.jerox.com/Administrator:@123@TRDOP@%$/arrows.png";
NSURL *url = [[NSURL alloc] initWithString:[sURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSLog(@"URL :: %@",url);

您需要转义url查询字符串中的特殊字符

使用:

我还需要提到代码中的一些错误:

  • 无需分配和初始化NSURL对象,因为您再次将另一个对象分配给该指针
  • 无需在此处使用
    stringWithString:

您需要对url查询字符串中的特殊字符进行转义

使用:

我还需要提到代码中的一些错误:

  • 无需分配和初始化NSURL对象,因为您再次将另一个对象分配给该指针
  • 无需在此处使用
    stringWithString:

根据您发布的代码示例,问题如下:

 NSString *strURL = @"ftp://Administrat:ABC(R%-@TRDOP@xx.xx.xx.xx/arrows.png";
仔细查看权限组件(用户名、密码和主机)。URL中使用
@
符号将用户名和密码与主机分开。由于您的密码包含
@
字符,因此必须对其进行百分比转义。
@
的编码百分比为
%40
,而不是代码:

 NSString *strURL = @"ftp://Administrat:ABC(R%-%40TRDOP@xx.xx.xx.xx/arrows.png";

你真的应该在那里转义其他特定于URL的字符,比如孤零零的
%
符号。

从你发布的代码示例中,问题是:

 NSString *strURL = @"ftp://Administrat:ABC(R%-@TRDOP@xx.xx.xx.xx/arrows.png";
仔细查看权限组件(用户名、密码和主机)。URL中使用
@
符号将用户名和密码与主机分开。由于您的密码包含
@
字符,因此必须对其进行百分比转义。
@
的编码百分比为
%40
,而不是代码:

 NSString *strURL = @"ftp://Administrat:ABC(R%-%40TRDOP@xx.xx.xx.xx/arrows.png";

你真的应该在那里转义其他特定于URL的字符,比如孤零零的
%
符号。

谢谢vinayak。它是有效的,但问题是它附加了“——file://localhost/“在url的末尾。我如何删除它?谢谢vinayak。它是有效的,但问题是它附加了“——file://localhost/“在url的末尾。我如何删除它?嗨,Midhun,请查看我更新的问题,我在url字符串中遇到了问题。谢谢。@JekilPatel:有什么问题吗?”?我得到了正确的NSURL。感谢Midhun的回复。问题是我在这行得到了警告——“NSString*strURL=@”;“。警告是—“转换比数据参数多%”,并且没有显示图像。@JekilPatel:如果我像上面那样使用,我没有收到警告。我唯一收到问题的时间是使用时:
NSString*strURL=[NSString stringWithFormat:@”管理员:ABC(R%-@TRDOP@xx.xx.xx.xx/arrows.png“]
谢谢Midhun的回复,是的,我确实收到了相同的问题,那么解决方法是什么呢?嗨,Midhun,请查看我的更新问题,我在URL字符串中遇到了问题。谢谢。@JekilPatel:什么问题?我得到了正确的NSURL。谢谢Midhun的回复。问题是我在这一行是“NSString*strURL=@”;警告是“转换比数据参数多%,图像没有显示。@JekilPatel:如果我像上面那样使用,我没有收到警告。我唯一遇到问题的时候是使用:
NSString*strURL=[NSString stringWithFormat:@”Administrator:ABC(R%-@TRDOP@xx.xx.xx.xx/arrows.png“]
谢谢Midhun的回复,是的,我在这里也遇到了同样的问题,那么解决办法是什么呢?