Bonjour,
voila mon code je veu recuperer le contenu d un fichier txt qui contient les regles d'un firewall dans linux exactement:
j ai fichier txt que je veus le transmettre dans ma base de donnees. voici le fichier:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75 import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.StreamTokenizer; import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.Scanner; import java.util.StringTokenizer; import org.hibernate.Session; import org.hibernate.Transaction; /** * * */ class fichier { public static void main(String[] args) throws IOException{ /** Demande d'entrée du nom de fichier à l'utilisateur */ String fil ="c://fich.txt" ; try{ FileReader lecteurDeFichier = new FileReader(fil); BufferedReader buff = new BufferedReader(lecteurDeFichier); System.out.println("Lecture du fichier : "+fil); //System.out.println(buff.readLine()); /** Compte le nombre de données par ligne (= nombre de colonnes) */ //System.out.println(buff.readLine()); String premLigne = buff.readLine(); /** Pour séparer les données, on utilise le tokenizer avec pour délimiteur ";" */ StringTokenizer st = new StringTokenizer(premLigne, ";" ); int nbDonnees = 0; while(st.hasMoreTokens()){ nbDonnees++; // System.out.print(st.nextToken()+" " ); } /** Compte le nombre de lignes pour la création du tableau */ int nbLignes = 1; while(buff.ready()){ buff.readLine(); nbLignes++; // System.out.println(nbLignes); } /** Déclaration du tableau */ String[][] tabDonnees = new String[nbLignes][nbDonnees]; FileReader lec = new FileReader(fil); BufferedReader BF = new BufferedReader(lec); /** Rangement des données dans le tableau */ while(BF.ready()){ String line = BF.readLine(); StringTokenizer tok = new StringTokenizer(line, ";" ); for(int i = 0; i<nbLignes; i++){ for(int j=0; j<nbDonnees; j++){ if(tok.hasMoreTokens()){ // tabDonnees[i][j]=tok.nextToken(); System.out.println( tabDonnees[0][0]); } } } }//Fin while }//Fin try catch (IOException e){ System.out.println("Erreur : "+e); } }//Fin main }//Fin
je veux justemen avoir chaque partie du regle par exemple accept , all, --, anywhere
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT icmp -- anywhere anywhere ACCEPT all -- anywhere anywhere ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT) target prot opt source destination REJECT all -- anywhere anywhere reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT) target prot opt source destination
Partager