Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
memorise une ligne dans un fichier.txt
Auteur Message
Répondre en citant
Message memorise une ligne dans un fichier.txt 
bonjour,

je suis entrian de me faire un petit programme, mais je bloque à un endroit.

dans un fichier qui comprend une liste de mots, je voudrais qu'il me mémorise le mot qui se trouve sur tel ligne.

comment puis-je faire ?

merci d'avance.

à bientôt.



Dernière édition par lherbaux le Jeu 15 Oct 2015 - 06:54; édité 2 fois
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message memorise une ligne dans un fichier.txt 
Salut !
Alors si j'ai bien compris tu as un fichier texte du type :

Code:
salut
blabla et autre mots
bon je sais pas quoi écrire :p
775656dzd4d4zzdzd ù & * test = -2
voila ! (test echo)
 


Et tu aimerais récupérer les mots de la ligne 3 par exemple c'est ça ? Et mettre cette ligne dans une variable ? Okay




______________________________________________________
Visiter le site web du posteur
Répondre en citant
Message memorise une ligne dans un fichier.txt 
moi j'avis trouvé cela pour la ligne 3


set c=1
setlocal enableDelayedExpansion
for /f "delims=" %%a in ('type syllabe.txt') do (
if !c! EQU 3 echo ligne 3 donne %%a
set /a c+=1)



Répondre en citant
Message memorise une ligne dans un fichier.txt 
Donc ça marche ?




______________________________________________________
Visiter le site web du posteur
Répondre en citant
Message memorise une ligne dans un fichier.txt 
Tu peux utiliser le SKIP de la boucle FOR :

Code:
@echo off
for /f "skip=2 delims=" %%a in (syllabe.txt) do (
  set $Ligne3=%%a
  goto:next)

:next
echo Ligne 3 --^> %$Ligne3%


Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message deux variables à la suite 
bonjour,

si vous suivez mes aventure de programmeur , je vous avez posé une question dans le forum : memorise une ligne dans un fichier.txt

maintenant que ça marche , je voudrais compliqué un peu plus la chose.

je le fais avec une recherche sur deux lignes. mais je n'arrive pas à coller les deux variables à la suite, pour former un mot.

par exemple: dans le fichier syllabe.txt , il me trouve à la ligne 3, la syllabe "mai" en i%% et à la ligne 4 "son" en %%j ( avec for et delims) . je voudrais qu'il me mémorise ou affiche le mot "maison". mais j'y arrive pas.

comment puis-je faire ?

merci d'avance. à bientôt.



Répondre en citant
Message memorise une ligne dans un fichier.txt 
Salut !

Code:
set toto=%%i%%j


Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message memorise une ligne dans un fichier.txt 
merci pour ton aide sachadee

mais ça ne marche pas.

quand je fais un : echo %toto% , ça me donne %i%j

y aurait-il une autre solution ?

je donne le programme :

Code:
@echo off
type syllabe.txt
echo.
setlocal enableDelayedExpansion

set c=1
for /f "delims=" %%a in ('type syllabe.txt') do (
if !c! EQU 1 echo ligne 1 donne %%a
set /a c+=1)

set d=1
setlocal enableDelayedExpansion
for /f "delims=" %%b in ('type syllabe.txt') do (
if !d! EQU 2 echo ligne 2 donne %%b
set /a d+=1)

set mot=%%a%%b
echo %mot%

le résultat donne :

gdh
ghd

ligne 1 donne gdh
ligne 2 donne ghd
%a%b




Répondre en citant
Message memorise une ligne dans un fichier.txt 
Voilà,

Code:
@echo off&cls

setlocal enableDelayedExpansion

set c=1
for /f "delims=" %%a in (syllabe.txt) do (
   if !c! EQU 1 set "ligne1=%%a"
   if !c! EQU 2 set "ligne2=%%a"
   set /a c+=1)

set $mot=%ligne1%%ligne2%

echo Le mot --^> %$mot: =%

pause


Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message memorise une ligne dans un fichier.txt 
encore un grand merci à sachadee, c'est tout a fait celà.



Répondre en citant
Message memorise une ligne dans un fichier.txt 
Si tu as tout un fichier à traiter tu peux faire directement :

Code:

@echo off&cls

setlocal enableDelayedExpansion

set c=1
for /f "delims=" %%a in (syllabe.txt) do (
   set "ligne!c!=%%a"
   set /a c+=1)

set $mot=%ligne1%%ligne2%

echo Le mot --^> %$mot: =%

pause



Ainsi toutes les lignes de syllabe.txt seront mise en variable (%ligne1%, %ligne2%, %ligneX...)

Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message memorise une ligne dans un fichier.txt 
j'ai réussi à faire un petit programme mais il m'indique toujours le première ligne du fichier.

voici le programme :

Code:
@echo off
type c:\perso\programme\batch\nombre.txt
echo.
setlocal enableDelayedExpansion
set c=1
set l=1
set compt=0
for /f "delims=" %%i in ('type c:\perso\programme\batch\nombre.txt') do set /a Compt+=1
echo nombre de ligne %Compt%
echo.
:boucle
for /f "delims=" %%a in ('type c:\perso\programme\batch\nombre.txt') do (
if !c! EQU %l% echo ligne %l% donne %%a et C %c%
set /a c+=1
if %l% lss %compt%  set /a l=l+1 & goto boucle
if %l% equ %compt% pause   )


à l'ecran , ça donne :

hjfgj
hjfhgjf
hgjfhgjf
hgfjfhh
hgfjfhjf

nombre de ligne 5

ligne 1 donne hjfgj et C 1
ligne 2 donne hjfgj et C 2
ligne 3 donne hjfgj et C 3
ligne 4 donne hjfgj et C 4
ligne 5 donne hjfgj et C 5
Appuyez sur une touche pour continuer...

comment puis-je faire pour que les ligne corresponde bien ?

merci d'avance.

à bientôt.



Message memorise une ligne dans un fichier.txt 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch