Manipulons les caractères avec iconv

Magazine
Marque
GNU/Linux Magazine
Numéro
269
Mois de parution
mai 2024
Spécialité(s)


Résumé

Au détour d'un petit projet incluant des échanges USB avec un adaptateur série utilisant une puce FTDI FT232R, j'ai rencontré un problème susceptible de survenir dans diverses situations. Même si aujourd'hui UTF-8 semble avoir toujours été présent dans nos terminaux, éditeurs, codes et que sais-je encore, les utilisateurs et programmeurs les plus aguerris se souviennent sans peine de la souffrance vécue lors de la transition depuis le bon vieux Latin1 (alias iso-8859-1). Mais la dure réalité est la suivante : UTF-8 n'est pas partout !


Le but du présent article n'est aucunement d'entrer dans les détails et les différences entre Unicode, UTF-8, UTF-16, UCS-2, etc. Je n'ai pas la place dans l'espace imparti et vous n'avez certainement pas la quantité d'antalgique nécessaire en stock dans votre trousse de premiers secours. En effet, en creusant un peu le sujet, on se rend rapidement compte que la gestion des caractères autres que le bon vieil ASCII ou l'UTF-8 est un sujet épineux, et pour cause. Avant d'arriver à la situation où l'on se trouve maintenant, il y a eu bien des tentatives, bien des normes et bien des formats, et tout ceci est encore très présent dans le code, dans les bibliothèques... mais aussi dans le matériel.

« Quel matériel ? » me demanderez-vous, méfiant et un tantinet inquiet. Tout le matériel ! Ou du moins, tout le matériel interfacé en USB. Car, en effet, les chaînes de caractères spécifiant la description du fabricant, du produit et du numéro de série (qui n'est pas...

Cet article est réservé aux abonnés. Il vous reste 93% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Carte à puce et microcontrôleur

Magazine
Marque
Hackable
Numéro
54
Mois de parution
mai 2024
Spécialité(s)
Résumé

Les cartes à puce ou smartcards reposant sur la norme ISO/IEC 7816 sont omniprésentes dans nos vies. Cartes bancaires, cartes Vitale, cartes SIM dans votre smartphone ou encore tantôt cartes permettant l'authentification ou la signature électronique sont autant d'exemples des services que ces petits bouts de plastique peuvent rendre. Il existe maintes solutions permettant d'interagir avec une smartcard sur PC, un Mac ou un SBC sous GNU/Linux, généralement via un lecteur USB CCID. Mais qu'en est-il lorsqu'on souhaite que notre montage à microcontrôleur utilise ce type de périphérique ? Il y a la voie simple avec l'utilisation d'une IC dédiée ou un support intégré au MCU, et la voie plus « créative » que nous allons explorer de ce pas...

Sharp PC-G850V : le dernier des ordinateurs de poche

Magazine
Marque
Hackable
Numéro
54
Mois de parution
mai 2024
Spécialité(s)
Résumé

Les années 90 et 2000... Une période de l'histoire de l'informatique pleine d'énergie et de potentiel qui commençait à peine à se réaliser. C'est le début du Web, le septembre éternel [1], la diversité des machines et des architectures, la période de gloire d’USENET et de l'IRC, l'âge d'or des stations de travail inabordables pour le commun des mortels, et bien sûr, celui des calculatrices programmables, ou plus exactement des ordinateurs de poche. Le Sharp PC-G850V(S) est sans doute celui qui aura fermé la marche de cette belle époque et une machine qui vaut toujours le coût d'être possédée, utilisée et programmée...

Meshtastic : communication longue distance, hors réseaux et gratuite

Magazine
Marque
Hackable
Numéro
54
Mois de parution
mai 2024
Spécialité(s)
Résumé

Une installation domotique ou un déploiement de capteurs repose généralement sur différents types de communication radio ou filaires : Wi-Fi, Zigbee, Z-Wave, Bluetooth, i2c, EIA-485, Ethernet, etc. Mais lorsque les distances se comptent en centaines de mètres voire en kilomètres, le problème devient plus épineux. L'option 4G est toujours possible, toutefois comme avec d'autres solutions d'IoT, ceci suppose de non seulement ajouter une charge financière au projet, mais implique également de reposer sur un réseau contrôlé par un opérateur susceptible de changer les règles comme il l'entend. Meshtastic est une réponse à cette contrainte : une réponse hors réseau (off grid), gratuite, participative et très économique...

Les derniers articles Premiums

Les derniers articles Premium

Générez votre serveur JEE sur-mesure avec Wildfly Glow

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Et, si, en une ligne de commandes, on pouvait reconstruire son serveur JEE pour qu’il soit configuré, sur mesure, pour les besoins des applications qu’il embarque ? Et si on pouvait aller encore plus loin, en distribuant l’ensemble, assemblé sous la forme d’un jar exécutable ? Et si on pouvait même déployer le tout, automatiquement, sur OpenShift ? Grâce à Wildfly Glow [1], c’est possible ! Tout du moins, pour le serveur JEE open source Wildfly [2]. Démonstration dans cet article.

Bénéficiez de statistiques de fréquentations web légères et respectueuses avec Plausible Analytics

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Pour être visible sur le Web, un site est indispensable, cela va de soi. Mais il est impossible d’en évaluer le succès, ni celui de ses améliorations, sans établir de statistiques de fréquentation : combien de visiteurs ? Combien de pages consultées ? Quel temps passé ? Comment savoir si le nouveau design plaît réellement ? Autant de questions auxquelles Plausible se propose de répondre.

Les listes de lecture

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.
11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.
10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Voir les 64 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous