shrimp-hamburger 2013-04-02 02:07 采纳率: 0%
浏览 2114
已采纳

应用报出了不兼容指针错误

正在读取UTF8编写的txt文件。

代码:

- (NSString *) readFromFile {

    NSArray *paths = NSSearchPathForDirectoriesInDomains
    (NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];


    NSString *fileName = [NSString stringWithFormat:@"%@/textfile.txt",
                          documentsDirectory];
    return [[NSString alloc] initWithContentsOfFile:fileName
                        usedEncoding:NSUTF8StringEncoding
                        error:nil];
}

在最后一行报错: ** incompatible integer to pointer conversion sending int to parameter of type NSUTF8StringEncoding **

请高手指点,谢谢

  • 写回答

1条回答 默认 最新

  • DaffodilGirl 2013-04-02 08:56
    关注

    usedEncoding这个参数是用来传递调用方的返回值。
    因此需要声明一个变量,传递关联给它

    NSStringEncoding enc;
    
    NSString *result = [[NSString alloc] initWithContentsOfFile:fileName
                        usedEncoding: &enc
                        error:nil];
    
    // Do something with the information about the encoding used
    if ( enc == NSUTF8StringEncoding ) {
         // ...
    }
    
    return result;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器