我正在处理 Amazon S3 上传,但我遇到了 key 名称太长的问题。 S3 按字节而不是字符来限制 key 的长度。
来自文档:
The name for a key is a sequence of Unicode characters whose UTF-8 encoding is at most 1024 bytes long.
我还尝试在文件名中嵌入元数据,因此我需要能够使用 Python 计算字符串的当前字节长度,以确保元数据不会使 key 过长(在这种情况下我会使用单独的元数据文件)。
如何确定 utf-8 编码字符串的字节长度?同样,我对字符长度不感兴趣……而是用于存储字符串的实际字节长度。
最佳答案
def utf8len(s):
return len(s.encode('utf-8'))
在 Python 2 和 3 中运行良好。
关于python - 如何确定 Python 中 utf-8 编码字符串的字节长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6714826/