Intro

J'ai créé ce blog pour partager avec vous une de mes passions : le développement informatique. J'essaierais de vous faire profiter de mes découvertes et surtout de publier régulièrement des articles. N'hésitez pas à apporter vos commentaires!

jeudi 15 septembre 2011

Java : Lire un fichier

Lorsqu’on cherche sur internet comment lire un fichier en java, on tombe généralement sur un exemple similaire à celui-ci :
BufferedReader buff = new BufferedReader(new FileReader("path_to_file"));
 String str = null;
 while((str = buff.readLine()) != null){
     // On traite la ligne obtenue
 }


Avec la version 1.5 de java est apparue une nouvelle classe utilitaire pour la lecture de fichier : la classe Scanner. Notre exemple de code devient alors :

dimanche 15 mai 2011

Itext : Protéger votre pdf contre la copie

Ces derniers jours, j’ai passé pas mal de temps sur la génération de PDF . Pour cela j’ai utilisé la librairie java IText(v 2.1.7), qui permet de créer et de modifier des PDFs très facilement.

Une de mes contraintes était que le PDF généré devait empêcher l’utilisateur de faire des copier-coller. Pour cela rien de plus simple, il suffit d’utiliser la méthode setEncryption de la manière suivante :

dimanche 1 mai 2011

Flex 4 : ByteArray BitmapImage

Lorsqu’on a une application flex qui communique avec un serveur, il est fréquent qu’on reçoive des images sous forme de tableau de bytes.
Je souhaitais pouvoir utiliser les nouvelles fonctionnalités du BitmapImage(l'option fillmode notamment), malheureusement ce dernier n'accepte pas de ByteArray comme source pour le binding (alors qu'un mx:Image ou la version 4.5 du BitmapImage le supporte parfaitement). C’est pourquoi j’ai décidé de créer un BitmapImage customisé. Ce dernier permet aussi, si on le souhaite, de redimensionner l’image de manière à ce qu’elle soit adaptée à la taille du conteneur.

dimanche 17 avril 2011

Error #1090: XML parser failure: element is malformed

Aujourd’hui j'ai travaillé sur un mx:Tree dont le dataprovider provenait d’un élément XML. Cet élément est construit dynamiquement à l’aide de données saisies par l’utilisateur. L’exemple de code ci-dessous montre la manière de générer cet XML:
var xmlContentString:String = '<' + content.fieldName + ' id="' +
                    content.id + '" title="' + content.title + '"/>';                                                   
newNode = new XML(xmlContentString);
appendContents(newNode);
Dans cet exemple, le contenu de la variable content.title est saisi par un utilisateur via une interface spécifique, j'ai donc très rapidement été confronté à l’erreur suivante :
Error #1090: XML parser failure: element is malformed. (il existe aussi la version française de l'erreur : Error #1090: Echec de l'analyse XML : le format de l'élément est incorrect.)

Dans mon cas l’origine de cette erreur est simple, l’utilisateur a juste saisi un caractère réservé au langage XML (&’"<>). Après quelque recherche sur le net je n’ai pas réussi à trouver une fonction qui permet de convertir ces caractères spécifiques. C’est pourquoi j’ai implémenté ce petit utilitaire et maintenant tout marche nickel :

lundi 11 avril 2011

Génération de classes modèles avec Hibernate Tools

Il est révolu le temps où un développeur devait gérer le mappings de ses classes modèles à la main. De nombreux outils existent actuellement afin de générer les classes modèles à partir d’un schéma de données physiques. Un des outils les plus connus est Hibernate Tools (à l’heure actuelle en version 3.4.0), au travers de cet article je vais tenter de vous expliquer comment utiliser cet outil avec Eclipse (Helios).