繁体   English   中英

无法将“UInt”类型的值转换为预期的参数类型“UnsafeMutablePointer” <UInt> “

[英]Cannot convert value of type 'UInt' to expected argument type 'UnsafeMutablePointer<UInt>'

我正在尝试从URL可访问的内容初始化String:

actualresponse.response = String(contentsOfURL: url, usedEncoding: NSUTF8StringEncoding)

我抛出以下错误,指向usedEncoding:

无法将'UInt'类型的值转换为预期的参数类型'UnsafeMutablePointer'

任何人都可以告诉我为什么会抛出这个错误以及如何解决它?

有两种相似但不同的方法可以弄错。

  • 通常的方法是

     init(contentsOfURL url: NSURL, encoding enc: UInt) throws 

    例如, encoding参数采用NSStringEncoding值来指定编码

     let string = try? String(contentsOfURL:url, encoding:NSUTF8StringEncoding) 

  • 第二种方法通过将指针作为usedEncoding参数传递来从文件中检索编码

     init(contentsOfURL url: NSURL, usedEncoding enc: UnsafeMutablePointer<UInt>) throws 

    文件说:

    返回后,如果成功读取url,则包含用于解释数据的编码。

    这意味着您必须传递一个指针,该指针将包含确定的文件编码。

     var encoding : NSStringEncoding = 0 let string = try? String(contentsOfURL:url, usedEncoding:&encoding) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM