Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[R] [BAT] Longueur d'une ligne
Auteur Message
Répondre en citant
Message [R] [BAT] Longueur d'une ligne 
Ce n'est pas vraiment un problème puisse que j'ai contourné le problème en javascript Laughing

En fait, pourquoi ceci ne fonctionne pas ? :

test.bat
Code:
@echo off
if exist test.txt del test.txt
set /a nb=0
set /a nb_loop=0
:loop
if "%nb_loop%"=="1000" goto :finish
if "%nb%"=="55" goto :skip
echo.test(%nb_loop%)> test.txt
goto :end
:skip
set /p add=<test.txt
del test.txt
echo.%add%;test(%nb_loop%)> test.txt
:end
set /a nb_loop=%nb_loop%+1
set /a nb=55
goto :loop
:finish
start test.txt
exit


Alors que dans les autres langages cela fonctionne ? Ici j'utilise du javascript :

test.js
Code:
[lang=javascript]var fso=new ActiveXObject("Scripting.FileSystemObject");
var oShell = new ActiveXObject("Shell.Application");
if ( fso.FileExists("test.txt") ) { var ts=fso.DeleteFile("test.txt"); fso.CreateTextFile("test.txt",true); }
var nb_loop=0;

while ( nb_loop<=1000 ) {
   if ( nb_loop==0 ) {
      var otf=fso.OpenTextFile("test.txt", 8 ,true);
      otf.Write("test("+nb_loop+")");
      otf.Close();
   } else {
      var ts=fso.OpenTextFile("test.txt",1,false);
      var add=ts.ReadLine();
      ts.close();
      var ts=fso.DeleteFile("test.txt");
      fso.CreateTextFile("test.txt",true);
      var otf=fso.OpenTextFile("test.txt", 8 ,true);
      otf.Write(add+";test("+nb_loop+")");
      otf.Close();
   }
   nb_loop++;
}
var commandtoRun = "test.txt"; 
oShell.ShellExecute(commandtoRun, "", "", "open", "1");




Dernière édition par Flammrock le Mar 2 Aoû 2016 - 16:50; édité 7 fois

______________________________________________________
la vie est trop courte pour retirer le périphérique USB en toute sécurité...
Si la statue de la liberté lève le bras depuis 125 ans, c'est parce qu'elle cherche du réseau sur son Blackberry Torches...
Grâce à mon nouveau correcteur automatiste sur mon téléphage, je ne fais plus aucune faute d'orthodontie.
Quelqu'un a t il déjà demandé au drapeau japonais ce qu'il enregistre depuis tout ce temps ?
Visiter le site web du posteur
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [R] [BAT] Longueur d'une ligne 
Ok je sais d'où ça vient ! Laughing

En batch, lorsqu'on importe le contenu d'un fichier dans une variable : celle-ci ne dépasse pas les 1023 caractères (ne me demander pas pk je ne sais pas)


Pour trouver d'où ça venait, j'ai fais une expérience témoin et une expérience test :


Expérience Témoin :
Code:
@echo off
set /a test_nb=0
set "test="
:loop
set test=%test%%test_nb%
set /a test_nb=%test_nb%+1
if "%test_nb%"=="2001" goto :end
goto :loop
:end
echo %test% > test.txt
pause

Résultat :








Expérience Test :
Code:
@echo off
set /a test_nb=0
set "test="
:loop
set test=%test%%test_nb%
set /a test_nb=%test_nb%+1
if "%test_nb%"=="2001" goto :end
goto :loop
:end
echo %test% > test.txt
set /p test_import=<test.txt
echo %test_import% > test.txt
pause

Résultat :





______________________________________________________
la vie est trop courte pour retirer le périphérique USB en toute sécurité...
Si la statue de la liberté lève le bras depuis 125 ans, c'est parce qu'elle cherche du réseau sur son Blackberry Torches...
Grâce à mon nouveau correcteur automatiste sur mon téléphage, je ne fais plus aucune faute d'orthodontie.
Quelqu'un a t il déjà demandé au drapeau japonais ce qu'il enregistre depuis tout ce temps ?
Visiter le site web du posteur
Message [R] [BAT] Longueur d'une ligne 


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