Ecrire le contenu d'une ArrayList dans un fichier texte
Salutation à vous les amis,
Je vous prie de m'excuser, mais je viens encore solliciter votre aide précieuse pour par rapport à une opération que je ne réussi par.
Je suis entrain de tenter d’exporter le résultat d’une requête <sql> que j’ai mis dans un <ArrayList> vers un fichier texte.
Le fichier est crée mais les données n’y sont pas inscrites. Pourtant quand j’essaie de l’afficher à l’écran elles apparaissent.
Code:
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
|
public class ExportData {
private String COMPTES,INTITULE,TYPE;
private static List<ExportData> list = new ArrayList<ExportData>();
public static void main(String args[]) {
String Driver;
Statement stmt;
ResultSet rs;
Driver = "com.mysql.jdbc.Driver" ;
Connection con = null ;
try { Class.forName(Driver);
con = DriverManager.getConnection( "jdbc:mysql://localhost/ecolexpert" , "root" , "mysql" );
if (!con.isClosed()){
System.out.println( "Successfully connected to MySQL DataBase \n" );
stmt = con.createStatement();
String filename = "C:/touscmpt1.txt" ;
String tablename = "touscmpt" ;
//String sql = "SELECT * INTO OUTFILE \"" + filename + "\" FROM " + tablename;
String sql = "SELECT * FROM " + tablename;
rs = stmt.executeQuery(sql);
while(rs.next()){
ExportData exp = new ExportData();
exp.setCOMPTES(rs.getString(1));
exp.setINTITULE(rs.getString(2));
exp.setCOMPTES(rs.getString(3));
list.add(exp);
PrintWriter sortie = new PrintWriter(new BufferedWriter(new FileWriter("C:/touscmpt2.txt")));
for(int i = 0; i < list.size(); i++){
sortie.println(list.get(i).toString());
}
System.out.println(list.toString());}}
} catch (Exception e) {
System.err.println( "Exception: " + e.getMessage());
}
finally {
try {
if (con != null )
con.close();
} catch (SQLException e) {} } }
public void setCOMPTES(String cOMPTES) {
COMPTES = cOMPTES;
}
public String getCOMPTES() { return COMPTES; }
public void setINTITULE(String iNTITULE) {INTITULE = iNTITULE;
public String getINTITULE() { return INTITULE;}
public void setTYPE(String tYPE) {TYPE = tYPE;}
public String getTYPE() {return TYPE;}
public String toString() {
return "" + COMPTES + "," + INTITULE
+ "," + TYPE + ""; }} |
Merci d'avance les amis.