2 u010025993 u010025993 于 2013.04.02 10:07 提问

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

正在读取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
DaffodilGirl   2013.04.02 16: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;
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!