SimpleDateFormat formatter = new SimpleDateFormat("ddMMyyyy_HHmmSS");
String strCurrDate = formatter.format(new java.util.Date());
String strfileNm = "Customer_" + strCurrDate + ".txt";
String strFileGenLoc = strFileLocation + "/" + strfileNm;
String Query1="select '0'||to_char(sysdate,'YYYYMMDD')||'123456789' class_code from dual";
String Query2="select '0'||to_char(sysdate,'YYYYMMDD')||'123456789' class_code from dual";
String Query3="select param from dual";
try {
Statement stmt = null;
ResultSet rs = null;
Statement stmt1 = null;
ResultSet rs1 = null;
stmt = conn.createStatement();
stmt1 = conn.createStatement();
stmt2 = conn.createStatement();
rs = stmt.executeQuery(Query1);
rs1 = stmt1.executeQuery(Query2);
rs2 = stmt2.executeQuery(Query3);
File f = new File(strFileGenLoc);
OutputStream os = (OutputStream)new FileOutputStream(f,true);
String encoding = "UTF8";
OutputStreamWriter osw = new OutputStreamWriter(os, encoding);
BufferedWriter bw = new BufferedWriter(osw);
while (rs.next()) {
bw.write(rs.getString(1)==null? "":rs.getString(1));
bw.write(" ");
}
bw.flush();
bw.close();
} catch (Exception e) {
System.out.println(
"Exception occured while getting resultset by the query");
e.printStackTrace();
} finally {
try {
if (conn != null) {
System.out.println("Closing the connection" + conn);
conn.close();
}
} catch (SQLException e) {
System.out.println(
"Exception occured while closing the connection");
e.printStackTrace();
}
}
return objArrayListValue;
}
The above code is working fine. it writes the content of "rs" resultset data in text file
Now what i want is ,i need to append the
the content in "rs2" resultset to the "same text file"(ie . i need to append "rs2" content with "rs" content in the same text file)..
------------------edit part----------------
stmt = conn.createStatement();
stmt1 = conn.createStatement();
stmt2 = conn.createStatement();
rs = stmt.executeQuery(Query1);
rs1 = stmt1.executeQuery(Query2);
rs2 = stmt2.executeQuery(Query3);
while (rs.next()) {
while(rs1.next()){
while(rs2.next()){
bw.write(rs.getString(1)==null? "":rs.getString(1));
bw.write("\t");
bw.write(rs1.getString(1)==null? "":rs1.getString(1));
bw.write("\t");
bw.write(rs2.getString(1)==null? "":rs2.getString(1));
bw.write("\t");
bw.newLine();
}
}
}
Le code ci-dessus fonctionne correctement. Mon problème estAjouter des données au même fichier texte en utilisant java
- "rs" ResultSet contient un enregistrement de la table
- "RS1" ResultSet contient 5 enregistrement de la table
- "RS2" ResultSet contient 5 enregistrement de la table
Les données "rs" deviennent récursives.
en écrivant au même fichier texte, la sortie je reçois comme
1 2 3
1 12 21
1 23 25
1 10 5
1 8 54
mais je besoin d'une sortie comme ci-dessous
1 2 3
12 21
23 25
10 5
8 54
Quelles sont les choses que je dois changer dans mon code .. S'il vous plaît conseils
-----------------edit part1------------------
Expected Result is
1 2 3
1 12 21
1 23 25
1 10 5
1 8 54
but output i got like
1 2 3
12 21
23 25
10 5
8 54
Aucun problème. Bien que j'ai ajouté par erreur un lien vers l'objet FileWriter au lieu de votre FileOutputStream suggéré. Ma réponse (que j'ai supprimée car elle était similaire à la vôtre) contenait un lien FileWriter ... –
par temps je dois faire une modification ici? Le jeu de résultats "rs" contient une donnée et le jeu de résultats "rs1" contient 10 données. Comment boucler "rs2" ici. s'il vous plaît répondre ASAP..Its urgents .. while (rs.next()) { bw.write (rs.getString (1) == null "": rs.getString (1)) ; bw.write (""); } – Manu
J'ai un problème ici – Manu