什么是一个很好的估计/转换/公式来计算出X#characters = Y#bytes?
答案 0 :(得分:5)
完全取决于编码和可能的数据。
对于UTF-16,如果您知道所有字符都在基本多语种平面中,答案将是bytes = 2 *个字符。
对于UTF-8,如果所有内容都在ASCII范围内,那么bytes = characters - 但如果有很多远东字符,那么它可能与bytes = 3 *个字符一样多(并且仍然假设为Basic Multilingual平面)。
其他编码显然有不同的情况。您能否提供有关您的情况(以及您的平台)的更多详细信息?您想要基于实际字符的准确计算值吗?您对要编码的文本有什么了解吗?
答案 1 :(得分:0)
对于ANSI,我认为1字节为char,但对于unicode,我认为每个字符2个字节。虽然也可能存在多字节模式。