On est tous habitué à utiliser le zoom sur nos navigateurs mobile en double tapant lorsque le contenu d’un site web n’est pas adapté l’écran.
Cette habitude je l’ai aussi sur les PC et Apple a ajoutée la fonctionnalité sur Safari, mais qu’en est-il pour Chrome mon bien aimé ? Pour l’instant rien de natif.

Je me suis lancer dans la conversion d’un petit projet PHP vers C#, et je suis tombé sur une fonction qui m’était totalement inconnue à savoir unpack().
Je vais vous partager le résultat de mes recherches sur ce sujet.

Il s’agit en fait de deux fonctions pack() qui compacte les arguments args dans un tableau d’octet binaire et unpack() qui fait l’inverse.
Ces deux fonctions proviennent à la base de perl mais sont implémentées partiellement en php, (certain format ne sont pas supportés).

Vous pouvez chercher sur la MSDN vous ne trouverez aucun équivalent complet de ces deux fonctions.
J’ai donc demandé à ma bible .net, Mister Jb Evain, si il en avait déjà entendu parlé et en deux minutes m’a sortie une classe existante dans le framework Mono Mono_DataConvert. Merci Jb :)
Même si Miguel de Icaza et son équipe à fait du bon boulot, son implémentation reste cependant elle aussi incomplete.

Je vais essaye de vous donner un ensemble d’exemples avec le code php et sont équivalent .net.

Une chaîne complétée avec NULL

// PHP
$packed = pack("a10","fox" );
$unpacked = unpack("a10",$packed);
// C#
var packed = "fox".PadRight(10, '');
var unpacked = ASCIIEncoding.ASCII.GetString(pack, 0, 4);

Notez que la distinction entre signé et non signé n’affecte que la fonction unpack , tandis que la fonction pack fournira le même résultat pour les deux formats.
De plus, notez que PHP enregistre de manière interne et intégrale les valeurs : cette représentation dépend de la machine. Si vous essayez d’enregistrer une valeur trop grande, elle risque d’être convertie et de donner lieu à des effets de bords vicieux.

En lisant le flux RSS de Scott Hanselman sur mon feedly préféré, je suis tombé sur un billet intéressant où Scott répond à un dev se demandant si il est vraiment développeur ou juste Googleur.

On a tous des papiers, factures, bultin de salaire… assez important et a pas perdre en cas de feu.

Voici un petit outil sympa pour les scanner vite fait et les récupérer en pdf

icopy

Disponible ici

Apres je met le tout sur ma Dropbox ou sur google drive.
Coté sécurité c’est pas le top, mais c’est juste des papiers qui normalement trainent sur le bureau :p