J'essaie de lancer ce morceau de code, et il continue à donner une erreur disant "argument de chaîne sans encodage"
ota_packet = ota_packet.encode('utf-8') + bytearray(content[current_pos:(final_pos)]) + '\0'.encode('utf-8')
De l'aide?
Vous passez un objet chaîne à un bytearray()
:
bytearray(content[current_pos:(final_pos)])
Vous devrez fournir un argument de codage (second argument) pour pouvoir le coder en octets.
Par exemple, vous pouvez le coder en UTF-8:
bytearray(content[current_pos:(final_pos)], 'utf8')
À partir de la bytearray()
documentation :
Le paramètre optionnel source peut être utilisé pour initialiser le tableau de différentes manières:
- S'il s'agit d'une chaîne, vous devez également donner le codage (et éventuellement, des erreurs ) paramètres;
bytearray()
convertit ensuite la chaîne en octets à l'aide destr.encode()
.