如何从CFString获取特定属性

时间:2012-03-09 11:58:47

标签: iphone cocoa-touch cocoa core-foundation cfstring

我想知道字符串是否是单字节编码。 CFShowStr可以执行此操作,但会将消息输出到控制台。 CFShowStr函数输出消息如下所示,IsEightBit项是我想要的:

Length 7    
IsEightBit 1    
HasLengthByte 0    
HasNullByte 1    
InlineContents 0    
Allocator SystemDefault    
Mutable 0    
Contents 0x104f9fef3    

1 个答案:

答案 0 :(得分:0)

我不认为八位标志意味着你的想法。请参阅CFShowStr的文档:

  

使用此功能可以了解CFString的特定属性   调试期间的对象。这些属性包括以下内容:(...)   原来它是一个8位字符串,如果是,是否是一个   C(HasNullByte)或Pascal(HasLengthByte)字符串。

我不知道CFString在内部使用了什么编码。你为什么关心八位?因为在大多数情况下你不应该这样做。