rebcao Posté(e) le 25 octobre 2012 Posté(e) le 25 octobre 2012 Bonjour, J'ai trouvé le programme SPLIT.EXE, pour découper un fichier .TXT... Mais il découpe en X fichiers de N lignes !!! Problème ça peut créer plus de 40 000 fichiers.... Ce que je cherche c'est un programme qui permette par exemple, de créer un nouveau fichier texte à partir de la ligne 15 et jusqu'à la dernière ligne.... Exemple de syntaxe: SPLIT.EXE FIC.TXT (fichier source) 10 (début ligne) FIN (dernière ligne) EXPORT.TXT (fichier de sortie) Ou plus simplement COUPER le fichier en 2 à partir du N° de ligne indiuqué... Avez-vous une idée de programme existant ? Je vous remercie Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
bryce Posté(e) le 25 octobre 2012 Posté(e) le 25 octobre 2012 Salut Christian, Ça peut se faire avec une commande DOS standard : more source.txt +15 > destination.txt permet de récupérer dans destination.txt le contenu de source.txt à partir de la ligne 16 (logique Microsoft...). Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
rebcao Posté(e) le 27 octobre 2012 Auteur Posté(e) le 27 octobre 2012 Bonjour, Merci pour cette suggestion... Je vais regarder ça de prêt ! Et si je veux le fichier de la ligne 1 à 15 ça donnerait quoi ? Je suppose qu'il y a une aide avec les options ? Je te remercie Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
bryce Posté(e) le 27 octobre 2012 Posté(e) le 27 octobre 2012 Bonjour, Pour l'aide de la commande, c'est :more /?Malheureusement les commandes DOS sont très limitées je trouve (pas trouvé comment récupérer les 15 premières lignes)... Les commandes GNU (Unix/Linux) sont plus puissantes, et on peut les utiliser sous Windows en installant GnuWin.Le package CoreUtils suffira pour avoir les commandes de manipulation de textes :- head pour récupérer les n premières lignes- tail pour récupérer les n dernières lignes. Je suppose qu'il doit bien exister un programme qui fasse tout ça, il faut juste le trouver... <_< Brice, formateur AutoCAD - Inventor - SolidWorks - ZWCad - DraftSight - SketchUp indépendant
(gile) Posté(e) le 27 octobre 2012 Posté(e) le 27 octobre 2012 Salut, Essaye ce petit exe.Ligne de commande pour copier les lignes 3 à 12 de source.txt dans target.txt :textsplit source.txt 3 12 target.txt : j'ai modifié le code et le fichier en téléchargement (CF ci-dessous)La ligne de commande :textsplit fichierSource ligneDépart [ligneFin] fichierCibleArguments :fichiersource : chemin du fichier à lireligneDépart : l'index de la première ligne à copier (base 1)ligneFin : (optionnel ) l'index de la dernière ligne à copier, si cet argument est omis le fichier source est copié jusqu'à la finfichierCible : chemin du fichier à écrire (écrase un fichier existant de même nom) On est pas dans le bon forum, mais je mets quand même le code (C#). using System.IO; using System.Text; namespace Gile.TextSplit { class Program { static void Main(string[] args) { int cnt = args.Length; string source = args[0]; string target = args[cnt - 1]; int start = int.Parse(args[1]) - 1; int i = 0; using (StreamReader sr = new StreamReader(source, Encoding.Default)) using (StreamWriter sw = new StreamWriter(target, false)) { for (; i < start; i++) { sr.ReadLine(); } if (args.Length == 3) { while (sr.Peek() > -1) { sw.WriteLine(sr.ReadLine()); } } else { int end = int.Parse(args[2]); while (sr.Peek() > -1 && i < end) { sw.WriteLine(sr.ReadLine()); i++; } } } } } } Textsplit.zip Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 28 octobre 2012 Auteur Posté(e) le 28 octobre 2012 Bonjour Gilles, Je te remercie... Une question quelle serait la syntaxe si je veux extraire de la ligne 15 à la FIN du fichier ? Je te remercie. Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
(gile) Posté(e) le 28 octobre 2012 Posté(e) le 28 octobre 2012 Salut, C'était pas prévu.J'ai modifié le code et le fichier en téléchargement dans le précédent message. La syntaxe est la suivante (on omet tout simplement de spécifier la ligne de fin) :textsplit source.txt 15 target.txt Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
rebcao Posté(e) le 28 octobre 2012 Auteur Posté(e) le 28 octobre 2012 Bonsoir, Super, ça marche... Juste pour info, (c'est pas grave) si on ne respecte pas la syntaxe, TEXTSPLIT plante violement ! On a qu'à faire gaffe ! sinon, c'est nickel... ça va enfin me permettre d'IMPORTER et d'EXPORTER des CHAMPS avec les versions LT... :blink: Tu va me dire quel rapport ?! AH ! AH ! Tu m'envoies la note ! :) Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant