Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何获取汉字笔划数?_Iphone_Ios_Nsstring_Cjk - Fatal编程技术网

Iphone 如何获取汉字笔划数?

Iphone 如何获取汉字笔划数?,iphone,ios,nsstring,cjk,Iphone,Ios,Nsstring,Cjk,如何获取汉字笔划数 示例> 一 => 一, 十 => 二, 日 => 4简短回答:如果没有硬编码的字符到笔划计数的映射,你就不能。然后,您必须假设用户使用的是特定的中文变体(例如繁体) Unicode(NSString使用的基本字符集)不区分传统的、简化的、特定于日语的、特定于韩语的等汉字。Unicode不直接编码笔划信息。相反,它区分字符(而不是它们的图形表示),并且根据所使用的语言和字体,字符可能具有不同的笔划计数。所以当角色十 可能普遍有两个笔划,其他字符会有所不同 维基百科给出的例子是“

如何获取汉字笔划数

示例>

一 => 一,

十 => 二,


日 => 4

简短回答:如果没有硬编码的字符到笔划计数的映射,你就不能。然后,您必须假设用户使用的是特定的中文变体(例如繁体)

Unicode(NSString使用的基本字符集)不区分传统的、简化的、特定于日语的、特定于韩语的等汉字。Unicode不直接编码笔划信息。相反,它区分字符(而不是它们的图形表示),并且根据所使用的语言和字体,字符可能具有不同的笔划计数。所以当角色十 可能普遍有两个笔划,其他字符会有所不同

维基百科给出的例子是“草”的字母U+8279,它在繁体中文中有四个笔划,但在其他变体中有三个笔划。

谢谢,数学

首先,打电话

NSInteger section = [[UILocalizedIndexedCollation currentCollation] sectionForObject:yourObject collationStringSelector:@selector(objectsProperty)];
然后检查以下数组中节的索引

[UILocalizedIndexedCollation currentCollation].sectionTitles
记得加上

Localized resources can be mixed = YES

在info.plist中,您可以使用查找表吗?请参阅问题。如果用户设置了国际设置,笔划计数是否恒定?(像contacts应用程序)也许吧,但仍然不会有一个API供您获取笔划计数。没有OS定义的
GetStrokeCount()
函数或类似的函数。