"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment décoder les données Base64 avec des erreurs de remplissage ?

Comment décoder les données Base64 avec des erreurs de remplissage ?

Publié le 2024-11-07
Parcourir:517

How to Decode Base64 Data with Padding Errors?

Décodage des données Base64 avec erreurs de remplissage

Le décodage des données Base64 est une tâche courante en programmation, mais un remplissage incorrect peut gêner le processus. Bien que base64.decodestring génère une erreur lors de la rencontre de ces erreurs de remplissage, des méthodes alternatives sont disponibles.

Une solution consiste à ajouter manuellement le nombre maximum de caractères de remplissage, qui est de deux. Le code base64.b64decode de Python 3.x tronquera automatiquement tous les caractères inutiles.

Cette approche est simple et efficace :

base64.b64decode(s   b'==')

Vous pouvez également utiliser base64.b64decode(s b'=' * (-len(s) % 4)) pour calculer le nombre de caractères de remplissage nécessaires en fonction de la longueur de l'entrée.

Si le La chaîne d'entrée a déjà un remplissage, assurez-vous que l'argument du mot clé validate est défini sur False (par défaut) pour éviter une erreur.

Si validate est défini sur False, vous pouvez ajouter aveuglément deux caractères de remplissage sans problème. Cependant, si validate est True, tout caractère non alphabétique dans l'entrée provoquera une erreur.

Déclaration de sortie Cet article est réimprimé à l'adresse : 1729171695. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3