/!\ Ecriture dans fichier existant, j'y arrive pas ... /!\

morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004 - 2 juin 2004 à 10:36
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004 - 2 juin 2004 à 15:39
Salut tout l'monde !

Voilà, j'ai un petit soucis .. Enfin pas si petit que ça ! Je me demande si il est possible d'écrire à un endroit précis dans un fichier car mon problème est le suivant. Je souhaite généré une page HTML mais je ne sais aps combien j'aurais de lignes et de colonne dans le tableau que je vais généré. j'aurais donc besoin d'écrire à plusieurs endroits de mon fichier. Peut-on mettre des paramètres pour écrire à tel ou tel ligne en utilisant la commande

Print #1, " <tr>"
Print #1, " <th scope=""Row"">" & param.Prefixe & "</th>"

Ou faut-il passer par une autre commande ?

Merci de votre aide !

11 réponses

morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 10:46
L'instruction Write semble plus approprié d'après la MSDN. Mais je ne vois tjrs pas comment résoudre mon problème :(
0
blissdumpweed Messages postés 79 Date d'inscription jeudi 15 avril 2004 Statut Membre Dernière intervention 8 juin 2004
2 juin 2004 à 10:50
Mets ton fichier dans une RichTextBox et effectue les recherches et les modifs à partir d'elle. ca sera bien plus pratique. Et pour sauvegarder après c'est facile avec l'instruction SaveFile.

Ya pleins d'exemples sur le site tu devrais trouver tyon bonheur.
0
plaineR Messages postés 237 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 6 décembre 2005 4
2 juin 2004 à 10:55
Ou sinon tu peux aussi générer le texte dans un tableau dynamique de type string et une fois ton texte généré, tu fais une boucle sur ce tableau pour écrire dans ton fichier texte.
Comme ça ton problème de numéro de ligne est résolu...
0
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 10:56
Je vais essayer de fouiner et si je trouve pas je reviendrais vous demander, car pour l emoment c'est assez flou ;/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 11:20
Tu pourrais m'en dire un peu plus PlaineR, car ton idée a l'air intéressante :)
0
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 11:30
je en vois pas comment générer le texte dans un tableau dynamique de type string .. Désolé, je débute :(
0
plaineR Messages postés 237 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 6 décembre 2005 4
2 juin 2004 à 11:56
Eh bien, d'abord tu créées ta variable de type tableau :
fic_result as string ()

Tu crées également une variable de type integer
nb_ligne as integer
nb_ligne = 0

Ensuite tu écris une ligne dans ton tableau
nb_ligne = nb_ligne +1
redim preserve fic_result(nb_ligne)
fic_result = "<th scope=""Row"">" & param.Prefixe & "</th>"
....

ensuite si tu veux insérer une ligne entre la ligne 4 et 5
tu fais une procédure pour décaler tes lignes à partir d'une ligne donnée :
private sub insertion_ligne (no_lig_ins as integer,
texte_ins as string)
dim i as integer
i = ubound(fic_result)
redim preserve fic_result (i)
' decalage des lignes
do while i > no_lig_ins
fic_result(i+1) = fic_result(i)
loop
fic_result(no_lig_ins) = texte_ins
end sub

tu appelles cette procédure pour insérer une ligne
insertion_ligne (5, "<tr> ....")

Ensuite quand tu veux générer ton fichier tu n'as plus qu'à faire une boucle sur ton tableau et écrire chacune de ses lignes...
0
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 14:02
Merci pour ton aide précieuse, mais je n'arrive pas encore à faire le lien avec mon programme que voici :

Private Sub GenereHtml()

' Séquence de test

Dim col As Integer ' Variable pour le nombre de colonnes
Dim line As Integer ' Variable pour le nombre de ligne
Dim color As Integer ' Variable pour les 3 couleurs (Rouge, Jaune & Vert)
fic_result As String
nb_ligne As Integer
nb_ligne = 0

' Détection du sens dans fichier existant

' Ouverture en écriture sur canal 1

Open "c:\index.html" For Output As #1
nb_ligne = nb_ligne + 1
ReDim Preserve fic_result(nb_ligne)

' Procédure d'insertion de données pour le tableau

Private Sub insertion_ligne(no_lig_ins As Integer, texte_ins As String)

Dim i As Integer
i = UBound(fic_result)
ReDim Preserve fic_result(i)
' Décalage des lignes
Do While i > no_lig_ins
fic_result(i + 1) = fic_result(i)
Loop
fic_result(no_lig_ins) = texte_ins

End Sub

' Tronc commun

Print #1, "
"
Print #1, "\"
Print #1, \"----
\"
Print #1, \"Agts |\"
' Print #1, \"35 |\"
' Print #1, \"AgtsAbsent |\"
' Print #1, \"18 |\"
Print #1, \"\"
Print #1, \"----
\"
Print #1, \"AgtsDispo |\"
' Print #1, \"17 |\"
' Print #1, \"TpsAppel |\"
' Print #1, \"4 |\"
Print #1, \"\"
Print #1, "
"
Print #1, "
"

Close #1

End Sub

Pour infos, les lignes en commentaire sont celle qui seront à inséré par la suite car en fait.

Voilà, je dois avoir pas mal d'erreur à la compilation, je n'ai pas eu le temps de tester .. Si tu as des idées :)
0
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 14:14
Je vais essayer d'expliquer mon problème un peu mieux.

Au départ, j'ai des données qui arrivent avec un certains nombre de paramètres. Toutes ces données doivent être classés dans un tableau (en passant par une feuille HTML classique). Je les récupère bien quand il s'agit de les récupéré à l'horizontal sans modification, c'est à dire de ce genre là

X | Y
-------------------------
Z | W
-------------------------
A | B

A préciser que ces données arrivent toutes les 2s et sont mis à jour toutes les 2s.

Mais ce que je veux faire, c'est pouvoir les organiser comme je veux. Autrement dit, je voudrais pouvoir afficher de cette façon là de la même façon.

X | Z | A
-----------
Y | W | B

Je m'embrouille de plus en plus :( ...
0
plaineR Messages postés 237 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 6 décembre 2005 4
2 juin 2004 à 14:34
J'ai du mal à voir le rapport entre ton code et ton exemple...
Je vais essayer de résumer ce que j'ai compris :

1. tu as un fichier HTML qui comporte déjà des données
2. tu veux écrire dans ce fichier d'autres données à des endroits précis de ton fichiers HTML, c'est bien ça ?

Par contre après je ne comprends pas ton problème de réorganisation horizontal / vertical ?
0
morpheus83z Messages postés 59 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 19 août 2004
2 juin 2004 à 15:39
je vais remettre ça au propre pour demain, là j'essaye d'avancer et je trouve des trucs petit à petit.
0
Rejoignez-nous