Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre à l'essai
    Suppression lignes et caractères sur chaque ligne
    Bonjour,

    J'ai un problème mais après avoir recherché un peu partout, et je n'ai pas trouvé de solution applicable à ma problématique.
    J'ai un fichier en .txt qui ressemble à ça :

    {\rtf\ansi\ansicpg1252\uc1\deff0\deflang1033{\fonttbl{\f0 Calibri;
    {\f1 Verdana;

    {\colortbl\red0\green0\blue0 ;\red15\green147\blue239 ;
    {\*\defchp\ltrch\f0\fs21\i0\b0\strike0\cf0\ulc0\ulnone
    {\*\ts2\tsrowd\spriority59\trbrdrt\brdrnone\trbrdrb\brdrnone\trbrdrl\brdrnone\trbrdrr\brdrnone\trbrdrh\brdrnone\trbrdrv\brdrnone\trgaph0\trpaddl75\trpaddr75\t

    \nouicompat\viewkind4\paperw12240\paperh15840\margl1425\margr1425\margt1425\margb1425\deftab720\sectd\pgwsxn12240\pghsxn15840\marglsxn1425\m
    A commander --> ADV pré-facturation
    {\ltrch\f0\fs20\i0\b0\strike0\cf0\ulc0\ulnone
    \line
    {\ltrch\f0\fs20\i\b\strike0\cf1\ulc0\ul
    [...]

    Et je voudrai enlever toutes les lignes contenant un caractère exemple \ ou {
    Mais je n'y arrive pas.
    Par n'importequel méthode soit écraser le fichier soit en recréer un j'ai déjà celui-ci qui extrait depuis un fichier rtf :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    set fso = CreateObject("Scripting.FileSystemObject")
    FichierTXT = "P61571"
     
     
    'Lecture fichier
        set readfile = fso.OpenTextFile(FichierTXT &".rtf", 1, false)
        do while readfile.AtEndOfStream=false
        Lecture = readfile.ReadLine
        loop
        readfile.close
     
     
    'Retraitement fichier
        Set NewFichier = fso.CreateTextFile(FichierTXT &".txt",TRUE)
        traitement=replace(replace(replace(Lecture,"\ulnone","\ulnone" &vblf),"\ul ","\ul " &vblf),"}", "" &vblf)
        traitement=replace(traitement,"\u233?", "é")
        NewFichier.WriteLine(traitement)
     
     
    Set fso = Nothing
    Set readfile = Nothing
    WScript.Quit


    Pouvez-vous m'aider svp ?

  2. #2
    Rédacteur/Modérateur

    Salut

    Chez moi s'est bon
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    	Dim fso, readfile, NewFichier
    	Set fso = CreateObject("Scripting.FileSystemObject")
     
    	Dim ContenuRecup, ChemFichier, Lecture, T
    ChemFichier = "C:\MesProgs\En VBScript et HTA\Lire Fichier.rtf\"
     
    'Lecture fichier
        set readfile = fso.OpenTextFile(ChemFichier & "FichierRTF.rtf", 1, false)
        do while readfile.AtEndOfStream=false
    		Lecture = readfile.ReadLine
    		'If Left(lecture,1) = "{" Or Left(lecture,1) = "\" Then ' on conserve les lignes même vide
    		If Left(lecture,1) = "{" Or Left(lecture,1) = "\" Or Trim(lecture) = "" Then 'là, on ne prend pas en compte les lignes vides
    			Else
    			'ne récupère que la partie texte
    			ContenuRecup = ContenuRecup & Lecture & vbNewline
    		End If
        loop
        readfile.close
    	Set readfile = Nothing
     
    	ContenuRecup = trim(ContenuRecup) ' supprime les éventuelles espaces de début et fin du texte
    	If ContenuRecup <> "" Then
    		For T = len(ContenuRecup) to 1 step -2
    			If Right(ContenuRecup,2) = vbNewline Then ' supprime les éventuelles saut de lignes en fin de texte
    				ContenuRecup = Left(ContenuRecup,(len(ContenuRecup)-2))
    				Else
    				Exit For
    			End If
    		Next
    	End If 
     
        Set NewFichier = fso.CreateTextFile(ChemFichier & "FichierTXT.txt",TRUE)
        NewFichier.Write(ContenuRecup)
     
     
    	Set fso = Nothing
    	MsgBox "fin"
    WScript.Quit
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  3. #3
    Membre à l'essai
    Suppression lignes et caractères sur chaque ligne
    Bonjour,

    Merci je viens de tester, mais le seul problème c'est que la récupération du fichier rtf ce fait sur une seul ligne du coup le fichier de sortie est vide
    C'est pour cela que sur le fichier de sortie j'avais fait ceci mais ça me supprimer pas les ligne contenant les caractères :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	set readfile = fso.OpenTextFile(FichierTXT &".rtf", 1, false)
    	do while readfile.AtEndOfStream=false
    	Lecture = readfile.ReadLine
    	traitement=replace(replace(replace(Lecture,"\ulnone","\ulnone" &vblf),"\ul ","\ul " &vblf),"}", "" &vblf)
    	traitement=replace(traitement,"\u233?", "é")
    	loop
    	readfile.close


    Comment faire ? J'ai essayé d'aptater le code avec "traitement", mais il sort quand même vide.

  4. #4
    Rédacteur/Modérateur

    Salut (Re)
    Peux tu confirmer la structure du contenu du fichier .RTF (exemple: en rouge le texte a récupérer)
    {\rtf\ansi\ansicpg1252\uc1\deff0\deflang1033{\fonttbl{\f0 Calibri;{\f1 Verdana;{\colortbl\red0\green0\blue0 ;\red15\green147\blue239 ;{\*\defchp\ltrch\f0\fs21\i0\b0\strike0\cf0\ulc0\ulnone{\*\ts2\tsrowd\spriority59\trbrdrt\brdrnone\trbrdrb\brdrnone\trbrdrl\brdrnone\trbrdrr\brdrnone\trbrdrh\brdrnone\trbrdrv\brdrnone\trgaph0\trpaddl75\trpaddr75\t\nouicompat\viewkind4\paperw12240\paperh15840\margl1425\margr1425\margt1425\margb1425\deftab720\sectd\pgwsxn12240\pghsxn15840\marglsxn1425\m A commander --> ADV pré-facturation, texte a récupérer{\ltrch\f0\fs20\i0\b0\strike0\cf0\ulc0\ulnone\line{\ltrch\f0\fs20\i\b\strike0\cf1\ulc0\ul {\rtf\ansi\ansicpg1252\uc1\deff0\deflang1033{\fonttbl{\f0 Calibri;{\f1 Verdana;
    &#8658;1 Y-a-t-il un ou plusieurs textes à récupérer?
    &#8658;2 le/les textes commencent il toujours par 1 ou 2 même caractères?
    &#8658;3 à la suite du/des textes, y-a-t-il toujours 1 ou 2 même caractères?

    Ces informations sont absolument indispensables pour tenter de trouver une solution.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  5. ###raw>post.musername###
    Membre à l'essai
    Voila le fichier en lecture par VBS :

    Beaucoup de ligne inutile et bien plus bas en rouge ce que je veux faire ressortir (le fichier de sortie n'est pas entier trop trop de lignes) alors que le fichier rtf 30 lignes pas plus.

    {\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff37\deff0\stshfdbch0\stshfloch37\stshfhich37\stshfbi0\deflang1036\deflangfe1036\themelang1036\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;
    {\f34\fbidi \froman\fcharset1\fprq2{\*\panose 02040503050406030204
    Cambria Math;

    {\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204
    Calibri;
    {\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;

    {\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;
    {\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204
    Calibri Light;

    {\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;
    {\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;

    {\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;
    {\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204
    Calibri;

    {\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304
    Times New Roman;
    {\f42\fbidi \froman\fcharset238\fprq2 Times New Roman CE;
    {\f43\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;

    {\f45\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;
    {\f46\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;
    {\f47\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);
    {\f48\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);

    {\f49\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;
    {\f50\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);
    {\f412\fbidi \fswiss\fcharset238\fprq2 Calibri CE;
    {\f413\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;

    {\f415\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;
    {\f416\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;
    {\f417\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);
    {\f418\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);

    {\f419\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;
    {\f420\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);
    {\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;

    {\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;
    {\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;
    {\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;

    {\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);
    {\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);
    {\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;

    {\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);
    {\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;
    {\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;

    {\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;
    {\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;
    {\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);

    {\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);
    {\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;
    {\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);

    {\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;
    {\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;
    {\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;

    {\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;
    {\fhimajor\f31533\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);
    {\fhimajor\f31534\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);

    {\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;
    {\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);
    {\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;

    {\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;
    {\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;
    {\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;

    {\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);
    {\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);
    {\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;

    {\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);
    {\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;
    {\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;

    {\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;
    {\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;
    {\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);

    {\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);
    {\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;
    {\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);

    {\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;
    {\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;
    {\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;

    {\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;
    {\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);
    {\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);

    {\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;
    {\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);
    {\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;

    {\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;
    {\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;
    {\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;

    {\fhiminor\f31573\fbidi \fswiss\fcharset177\fprq2 Calibri (Hebrew);
    {\fhiminor\f31574\fbidi \fswiss\fcharset178\fprq2 Calibri (Arabic);
    {\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;

    {\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);
    {\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;
    {\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;

    {\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;
    {\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;
    {\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);

    {\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);
    {\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;
    {\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);


    {\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
    \red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red15\green147\blue239;
    {\*\defchp \f37\fs21\cf1\ulc1
    {\*\defpap \ql \li0\ri0\sa180\sl276\slmult1
    \widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
    \noqfpromote {\stylesheet{\ql \li0\ri0\sa180\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af37\afs24\alang1025 \ltrch\fcs0
    \f37\fs21\cf1\lang1033\langfe1036\cgrid\langnp1033\langfenp1036\ulc1 \snext0 \sqformat \spriority0 Normal;
    {\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;
    {\*
    \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa180\sl276\slmult1
    \widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \f37\fs21\cf1\lang1036\langfe1036\cgrid\langnp1036\langfenp1036\ulc1 \snext11 \ssemihidden \sunhideused Normal Table;
    {\*
    \ts15\tsrowd\trpaddl75\trpaddr75\trcbpat1\trcfpat1\tblind0\tblindtype0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa180\sl276\slmult1\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1
    \af37\afs24\alang1025 \ltrch\fcs0 \f37\fs21\cf1\lang1033\langfe1036\cgrid\langnp1033\langfenp1036\ulc1 \snext15 \spriority59 Table Normal;

    {\*\rsidtbl \rsid7097638\rsid10304457
    {\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0
    \mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1
    {\info{\operator Guillaume MARCEL
    {\creatim\yr2020\mo1\dy29\hr15\min48
    {\revtim\yr2020\mo1\dy29\hr15\min48
    {\version2
    {\edmins0
    {\nofpages1
    {\nofwords105
    {\nofchars582
    {\nofcharsws686
    {\vern57447


    {\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/...rd/2003/wordml

    \paperw12240\paperh15840\margl1425\margr1425\margt1425\margb1425\gutter0\ltrsect
    \widowctrl\ftnbj\aenddoc\hyphhotz425\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120
    \dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\rsidroot7097638 \nouicompat \fet0{\*\wgrffmtfilter 2450
    \nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\*\pnseclvl1
    \pnucrm\pnstart1\pnindent720\pnhang {\pntxta .

    {\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .

    {\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .

    {\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )

    {\*\pnseclvl5
    \pndec\pnstart1\pnindent720\pnhang {\pntxtb (
    {\pntxta )

    {\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (
    {\pntxta )

    {\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (
    {\pntxta )

    {\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang
    {\pntxtb (
    {\pntxta )

    {\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (
    {\pntxta )

    \pard\plain \ltrpar\ql \li0\ri0\sa180\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af37\afs24\alang1025 \ltrch\fcs0
    \f37\fs21\cf1\lang1033\langfe1036\cgrid\langnp1033\langfenp1036\ulc1 {\rtlch\fcs1 \af37 \ltrch\fcs0 \fs20\lang1036\langfe1036\dbch\af31505\langnp1036\insrsid10304457 \hich\af37\dbch\af31505\loch\f37 A commander --> ADV pr\loch\af37\dbch\af31505\hich\f37
    \'e9\hich\af37\dbch\af31505\loch\f37 -facturation\line
    {\rtlch\fcs1 \af37 \ltrch\fcs0 \b\i\fs20\ul\cf17\lang1036\langfe1036\dbch\af31505\langnp1036\insrsid10304457 \hich\af37\dbch\af31505\loch\f37 Guillaume \hich\af37\dbch\af31505\loch\f37
    le 28/01/2020 16:41\line \line
    {\rtlch\fcs1 \af37 \ltrch\fcs0 \fs20\lang1036\langfe1036\dbch\af31505\langnp1036\insrsid10304457 \hich\af37\dbch\af31505\loch\f37 Installation technique sur site --> A commander\line
    {\rtlch\fcs1 \af37 \ltrch\fcs0
    \b\i\fs20\ul\cf17\lang1036\langfe1036\dbch\af31505\langnp1036\insrsid10304457 \hich\af37\dbch\af31505\loch\f37 C\loch\af37\dbch\af31505\hich\f37 \'e9\hich\af37\dbch\af31505\loch\f37 line \hich\af37\dbch\af31505\loch\f37 le 27/01/2020 11:45\line \line
    {
    \rtlch [....]
    Le fichier RTF ressemble à ça :

    A commander --> ADV pré-facturation
    Guillaume le 28/01/2020 16:41

    Installation technique sur site --> A commander
    Céline le 27/01/2020 11:45

    Validation Technique --> Installation technique sur site
    David le 20/01/2020 16:58

    1.5
    David le 20/01/2020 16:58

    Paiement comptant
    Yasmina le 16/01/2020 16:48

    --> Validation Technique
    Yasmina le 16/01/2020 16:46

    offre homologuée
    Mélissa le 16/01/2020 15:49

    prevoir la modif des matrices (voir Lolita)
    Stéphanie le 08/01/2020 18:03

    le cabinet a refusé notre formation
    menace de partir à la concurrence.
    JPG a dit ok sans formation -> bien stipulé sur la propal que la formation est refusée par le cabinet
    Stéphanie le 08/01/2020 18:02
      0  0

  6. #6
    Rédacteur/Modérateur

    Salut

    Une réponse qui ne me convient pas moi même
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    Option explicit
    	Dim fso, readfile, NewFichier
    	Set fso = CreateObject("Scripting.FileSystemObject")
     
    	Dim ContenuRecup, ChemFichier, Lecture, T
    ChemFichier = "C:\MesProgs\En VBScript et HTA\Lire Fichier.rtf\"
     
    'Lecture fichier
        set readfile = fso.OpenTextFile(ChemFichier & "FichierRTF.rtf", 1, false)
        ContenuRecup = readfile.ReadAll
    	readfile.close
    	Set readfile = Nothing
     
        Set NewFichier = fso.CreateTextFile(ChemFichier & "FichierTXT.txt",TRUE)
        NewFichier.Write(NewFormatText(ContenuRecup))
    	NewFichier.close
    	Set NewFichier = Nothing
     
    	MsgBox NewFormatText(ContenuRecup)
     
    	Set fso = Nothing
    	MsgBox "fin"
    WScript.Quit
     
     
    '******************** Etude avec RegExp ***********************************
    Function NewFormatText(TextSoumis)
    	Dim RegularExpressioN, ResulT, Match, RecuP
    	Dim MeStr, MsG, T, U
     
    	MsG = "": MeStr = TextSoumis
    	Set RegularExpressioN = New RegExp 
    	RegularExpressioN.Pattern = "f37 ([\w ->]*)|f37[\r\f\n]+([\w /:]*)"
    	RegularExpressioN.IgnoreCase = True ' accepte caract. min/MAJ
    	RegularExpressioN.Global = True ' s'applique à la chaîne entière
    	If RegularExpressioN.Test(MeStr) = False Then 'non obligatoire précaution
    		NewFormatText = "Teste de l'éxpression " & RegularExpressioN.Pattern & " échoué"
    		Exit Function
    		Else
    		Set ResulT = RegularExpressioN.Execute(MeStr)
    		For U = 0 To ResulT.Count - 1
    			Set Match = ResulT(U)
    			If Match.SubMatches.Count > 0 Then
    				For T = 0 To Match.SubMatches.Count - 1
    					If Trim(Match.SubMatches(T)) <> "" Then
    						RecuP = Match.SubMatches(T)
    						If Recup = "line " Or RecuP = "C" Then
    							Else
    							MsG = MsG & RecuP & vbNewLine
    						End If
    					End If
    				Next
    			End If
    			Set Match = Nothing
    		Next
    		MsG = Left(MsG, (len(MsG)- len(vbNewLine))) 'pour supprimer le dernier vbNewLine
    	End If
    	Set RegularExpressioN = Nothing
    	NewFormatText = MsG
    End Function

    J'ai pris par Copier/Coller le dernier exemple du fichier RTF, ce qui donne:
    A commander --> ADV pr
    -facturation
    Guillaume
    le 28/01/2020 16:41
    Installation technique sur site --> A commander
    le 27/01/2020 11:45


    Je suis curieux de ta réponse sur un fichier .RTF entier.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  7. #7
    Membre actif
    Citation Envoyé par GuiJenn34 Voir le message
    J'ai un problème mais après avoir recherché un peu partout, et je n'ai pas trouvé de solution applicable à ma problématique.
    N'est-elle pas de convertir un document rtf au format texte ?
    Si c'est le cas, une recherche comme rtf2txt ou rtf2raw vous aidera à trouver le bon outil.

  8. #8
    Membre à l'essai
    Suppression lignes et caractères sur chaque ligne
    Bonjour,

    Je viens de tester le code c'est beaucoup mieux mais pas tout a fait l'original :


    Fichier de sortie :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    A commander --> ADV pr
    -facturation
    Guillaume 
    Installation technique sur site --> A commander
    le 27/01/2020 11:45
    Validation Technique --> Installation technique sur site
    David 
    le 20/01/2020 16:58
    1.5
    le 20/01/2020 16:58
    Paiement comptant
    Yasmina 
    le 16/01/2020 16:48
     --> Validation Technique
    Yasmina 
    le 16/01/2020 16:46
    offre homologu
    e
    M
    lissa 
    le 16/01/2020 15:49
    prevoir la modif des matrices (voir Lolita)
    St
    pha
    nie 
    le 08/01/2020 18:03
    le cabinet a refus
     notre formation 
     la concurrence.
     sur la propal que la formation est refus
    e par le cabinet
    St
    phanie 
    le 08/01/2020 18:02


    En faite c'est vraiement le texte que je souhaites récupérer mais en faisant avec du VBS j'ai plein de caractère spéciaux qui resorte.

###raw>template_hook.ano_emploi###