1

我想知道一个字符串是否是单字节编码。可以完成这项CFShowStr工作,但它会将消息输出到控制台。CFShowStr函数输出消息是这样的,项目IsEightBit是我想要的:

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

1 回答 1

0

我不认为八位标志意味着你认为它的作用。请参阅文档CFShowStr

使用此函数可在调试期间了解 CFString 对象的特定属性。这些属性包括: (...) 最初是否为 8 位字符串,如果是,则为 C ( HasNullByte) 或 Pascal ( HasLengthByte) 字符串。

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

于 2012-03-09T12:04:56.627 回答