Extraire du texte entre balise d'un .txt et generer html avec ce texte

[Résolu]
Signaler
Messages postés
23
Date d'inscription
dimanche 13 mars 2005
Statut
Membre
Dernière intervention
30 juillet 2007
-
Messages postés
23
Date d'inscription
dimanche 13 mars 2005
Statut
Membre
Dernière intervention
30 juillet 2007
-
Bonjour à tous,

J'ai une petite application à faire et je ne trouve aucune source ou message sur le forum capable de m'aider dans mon développement.

Je ne recherche pas un code tout pondu, je désire simplement des piste de réflexion pour mon code.

Description du programme :

J'ai un .txt contenant du texte (logique :) ).
Certaines partie du texte de ce fichier est entre balise (exemple <titre1> </titre1>).

Je souhaite développer une application qui pourra extraire le texte des différentes balises que je préciserai dans le code puis d'injecter ces différentes parties du texte extrait dans une partie précise de ma page HTML (déjà modélisée au niveau de l'interface mais vide en texte)

Merci à tous ceux qui pourront m'eclairer à ce sujet.

Si vous pensez qu'un autre langage que le VB est plus adapté, merci de me le faire savoir !

A+++ ;)

4 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
umm, voici un exemple rapide...

on suppose sBuffer déjà rempli par lecture du fichier texte :

Option Explicit 

Private Sub Form_Load() 
    Dim sBuffer As String 
    sBuffer =  "<head>" & vbCrLf 
    sBuffer = sBuffer & "<titre1>bonjour</titre1>" & vbCrLf 
    sBuffer = sBuffer & " ah ouai " & vbCrLf 
    sBuffer  = sBuffer & "<nan>ouaip</nan>" & vbCrLf 
    sBuffer =  sBuffer & "<test>ouaip</test>" & vbCrLf 
    sBuffer = sBuffer & "</head>" 

    Dim aBalises(3) As String 
    aBalises(0) = "titre1" 
    aBalises(1) = "test" 
    aBalises(2) = "balise3" 
    aBalises(3) = "non" 

    Dim i As Long, lPos1 As Long, lPos2 As Long 
    Me.AutoRedraw = True 

    For i = 0 To 3 
        lPos1 =  InStr (1, sBuffer, "<" & aBalises(i) & ">") 
        lPos2  = InStr(lPos1 + 1, sBuffer, "</" & aBalises(i) & ">") 

        If lPos1 > 0 And lPos2 > 1 Then 
            Me.Print UCase$(aBalises(i)) & " : " & Mid$(sBuffer, lPos1 + Len(aBalises(i)) + 2, lPos2 - lPos1 - Len(aBalises(i)) - 2) 
        Else 
            Me.Print UCase$(aBalises(i)) & " : non-trouvée..." 
        End If 
    Next i 
End Sub

<small> Coloration
syntaxique automatique [AFCK]</small>
       

++
PCPT  [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
salut,
pourtant il y a déjà ce genre de réponses.
as-tu essayé avec "parser html" ?

++
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
Messages postés
23
Date d'inscription
dimanche 13 mars 2005
Statut
Membre
Dernière intervention
30 juillet 2007

Merci pour ta réponse, cependant, cela ne m'a pas aidé :-( désolé
Messages postés
23
Date d'inscription
dimanche 13 mars 2005
Statut
Membre
Dernière intervention
30 juillet 2007

Nikel, ca a pu m'aider !! merci beaucoup :)