begin process at 2010 02 09 19:25:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

Ecriture en couleur dans un fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ecriture en couleur dans un fichier

jeudi 5 janvier 2006 à 12:01:31 | Ecriture en couleur dans un fichier

LukeSkywalker67

Bonjour à tous,
Je cherche une solution pour écrire du texte en couleur dans un fichier sans passer par
un objet RichTextBox. En effet mon texte à écrire peut être très long
(> 1 Méga) et la procédure SaveFile du RichTextBox n'est pas adaptée dans mon cas
(le temps de traitement devient trop long).

Merci d'avance.

jeudi 5 janvier 2006 à 12:51:52 | Re : Ecriture en couleur dans un fichier

ScSami

Membre Club
Réponse acceptée !
Tu ne pose pas le problème correctement.

Quelques explications :
Les fichiers, par définition, ne sont qu'une suite d'octets. Lorsque ces octets sont humainement interprétables sous forme de caractères ASCII, on parle de fichier texte. Texte brut donc puisque chaque octet du fichier est un caractère. Mais ce type de fichiers (.txt [text brut]) ne sont pas prévu pour colorer du texte... Pour ajouter des attributs à du texte (coloration, polices différentes, graisse, italique, ...) il faut ajouter des balises (qu'importe la forme). Autrement dit, faire en sorte que certaines chaines de caractères introduisent un argument : par exemple, on peut considérer que "*B texte *B" permet de graisser le texte mis entre ces balises. Alors ici, bien sûr, c'est moi qui ai inventé cette balise. Mais en réalité, il y des formats de fichiers "standard" pour faire ça. Citons le RTF (le plus basique d'entre eux), le .DOC (de Word), ...
Mais attention, là ce ne sont plus de simples fichiers texte (brut) !!! Non, pour que la couleur (ou les autres attributs) puisse s'afficher il faut que le logiciel qui lit les octets, les interprêtes (détecte les balises) et affiche ce qu'il faut.

Donc, il faut bel et bien utiliser des composants spécifiques en fonction du format à lire!!!
Si le RTB (pour les .TXT et .RTF) ne te convient pas, il n'y a pas beaucoup d'autres solutions que d'intégrer le composant Word dans ton projet!!!

En tous les cas, ce n'est pas avec le simple TextBox que tu mettras de la couleur à du texte!!! Cependant, il y a quelques sources (a toi de chercher) qui, via des APIs, arrivent à colorer ce qui, à la base, ne pouvait pas l'être. Mais outre la "complexité" certaine de ces techniques, elles ne sont que des "combines" par forcément très fiables!


Sinon, l'autre solution (puisque, visiblement, tu trouves RTB trop lent !!!) serait de récupérer le code RTF (cf. la propriété spécifique) dans une variable puis de l'enregistrer manuellement dans un fichier d'une traite via l'instruction "Open" en mode "Binary".
Pour ce genre de pratiques, je te laisse te référer aux diverses sources d'ici.

Est-ce que celà répond à ta question ???

Enjoy

( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
jeudi 5 janvier 2006 à 13:11:19 | Re : Ecriture en couleur dans un fichier

LukeSkywalker67

Merci pour toutes ces précisions ScSami.
La solution le plus pratique serait d'inserer le code RTF dans le fichier.
Je vais essayer de creuser de ce côté-là.
En tout cas merci d'avoir pris du temps d'expliquer tout ça.

Bye.



Cette discussion est classée dans : fichier, écrire, texte, couleur, ecriture


Répondre à ce message

Sujets en rapport avec ce message

Ecriture fichier unicode [ par voirlemonde ] Bonjour,J'essaye d'écrire un fichier texte au format unicode contenant à la fois des caractères européens et cyrilliques.Les données à écrire sont sto Ecriture de données d'un fichier à un autre [ par ben33000 ] Bonjour,Je suis un grand débutant dans la programmation sous excel.Je souhaiterais connaitre le code pour écrire des données depuis un fichier excel v Ecriture dans un fichier Texte [ par bluetoote ] Bonjour TLM,Je suis entrain de faire une petite application sur VB6. Mon probleme c'est que j'ai pas pu déclarer l'expression monconfig comme variable VB.Net Écrire dans un fichier texte [ par JeffC1977 ] Salut...Je veux écrire dans un fichier texte qui existe déjà. Dans ce fichier il peux y avoir un nombre X de ligne des texte.Je veux donc aller écrire Lire et écrire dans un fichier texte à une ligne bien définie [ par kyoleroi ] Bonjour,Alors voici mon problème:j'ai un fichier text qui est rempli séquentielement.exemple : 1;csd;cds;cds2;cd;eg;tjh3;hty;kui;kiu...12; hty;kfj;ser autorisation ecriture sous vista [ par aurel16 ] Bonjour,J'ai crée un logiciel qui fonctionne très bien sur ma machine. Mais lorsque je veux l'installer sur une autre machine qui possède vista, cela écrire dans un fichier texte avec vb.net [ par lemabs ] salut tt le monde je ss tjrs entrain de développer mon application en vb.net je veux récupérer des données reçues de port serie et les enregistrer dan Ecriture dans un fichier texte... [ par mike79 ] BonjourJe sais ecrire dans un fichier texte en utilisant les commandes print ou write mais la façon dont celà est écrit me dérange.Par exemple, je vou pb d'ecriture ds un fichier texte [ par cissou06 ] Salut a tous!Je cree un fichier:Set Fsys = CreateObject("Scripting.FileSystemObject")Set MyFile = Fsys.CreateTextFile("D:\MyDoc\fichierIni.txt")et ens Ecriture sur un fichier texte sans "" [ par gagaet22 ] J'ecris de la facon suivante sur le fichier et je souhaite ecrire un string sans les "", mais la je ne sais pas comment....Voila, merci de me reseign


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales