NSString dataUsingEncoding无法正常工作?

时间:2009-10-13 16:15:26

标签: nsstring

我无法让这个工作:

    NSString *string = @"!#€%&/()*^*_:;;:;_poawolwasnndaw";
    NSData *stringData = [string dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:NO];

stringData将为nil。为什么呢?

1 个答案:

答案 0 :(得分:5)

根据文档,设置allowLossyConversion:NO会产生以下潜在行为:

  

如果flag为NO,则返回nil,并且在不丢失某些信息(例如重音或大小写)的情况下无法转换接收器。

在这种情况下,上面的欧元符号没有等效的ASCII,因此整个结果将返回nil