En Java : (Merci Julien)
import java.io.* ;
public class lireFichier {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String sortie = args[0] ;
String chaine="" ;
//lecture du fichier texte
try{
InputStream ips= new FileInputStream(sortie) ;
InputStreamReader ipsr=new InputStreamReader(ips) ;
BufferedReader br=new BufferedReader(ipsr) ;
String ligne ;
int i=1 ;
while ((ligne=br.readLine()) !=null){
//System.out.println(ligne) ;
chaine=ligne ;
//création ou ajout dans le fichier texte
try {
FileWriter fw = new FileWriter ("sortie"+i+".txt") ;
BufferedWriter bw = new BufferedWriter (fw) ;
PrintWriter fichierSortie = new PrintWriter (bw) ;
fichierSortie.println (chaine) ;
fichierSortie.close() ;
//System.out.println("Le fichier " + fichier + " a été créé !") ;
}
catch (Exception e){
System.out.println(e.toString()) ;
}
i++ ;
}
br.close() ;
}
catch (Exception e){
System.out.println(e.toString()) ;
}
}
}
En C : (Merci Ismaël)
#include
#include
#include
#include
int main(int argc, char *argv[]){
FILE* inputFile = NULL ;
FILE* outputFile = NULL ;
char name[256] ;
char * line = NULL ;
size_t len = 0 ;
size_t read ;
int cpt = 0 ;
if( argc != 2 ){
fprintf(stderr, "Error : argument number incorrect\n") ;
exit(1) ;
}
if( !inputFile = fopen(argv[1], "r" ) ){
fprintf(stderr, "Error : unable to open the inputfile\n") ;
exit(1) ;
}
while( (read = getline(&line, &len, inputFile)) != -1) {
vscanf(name, "out_%d.txt", cpt++) ;
if( !outputFile = fopen(name, "w" ) ){
fprintf(stderr, "Error : unable to open the inputfile\n") ;
exit(1) ;
}
fprintf(outputFile, "%s", line) ;
fclose(outputFile) ;
}
fclose(inputFile) ;
return 0 ;
}
En CSH : (Merci Pascal)
>#!/bin/tcsh
>set nblignes = `wc -l < $argv[1]`
>while ($nblignes > 0)
> sed -n "${nblignes}s/.*/&/p" $argv[1] > ligne.$nblignes.txt
> @ nblignes--
>end