Datenverlust!

Status
Nicht offen für weitere Antworten.

glubsch

Mitglied
hallo,

ich greife über die odbc-jdbc brücke auf eine access db zu, führe eine suche darauf aus un schreibe die passenden datensätze in eine csv datei. nun hab ich aber das problem, dass ein kleiner teil der datensätze am ende verloren geht. es fehlen je nach größe der erstellten datei bis zu ca 100 Datensätze. der letzte datensatz der in die datei geschrieben wird wird auch nur halb reingeschrieben.
hier mal mein code

import java.sql.*;
import java.io.*;
public class search {


public static void main(String args[]) throws IOException {

try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e) {
System.out.println("Fehler bei bei odbc-jbdc Bridge "+e);
return;

}

File datei = new File("test.csv");
FileWriter ausgabestrom= new FileWriter(datei);
PrintWriter ausgabe = new PrintWriter(ausgabestrom);


Connection con;
Statement stmt;
ResultSet rSet;
try {
String url ="jdbc:eek:dbc:db";
con=DriverManager.getConnection(url,"","" );
stmt=con.createStatement();

String sqlQuery="SELECT * FROM Tabelle Where(Source Like '%14%'And Description Like '%')";
rSet=stmt.executeQuery(sqlQuery);
//abfrageergebniss ausgeben
long an ,ende, dauer;
an=System.currentTimeMillis();
while(rSet.next()){
ausgabe.println(rSet.getString(1)+";"+rSet.getString(2)+";"+rSet.getString(3)+";"+rSet.getString(4)+";"+rSet.getString(5));
}

stmt.close();
con.close();
}
catch(SQLException e) {
System.out.println( "Fehler bei Tabellenabfrage " + e );
return;
}

}

}

ich hab keinen schimmer wie das programm verändern muss, damit alle datensätze in die datei geschrieben werden!

vielen dank für eure hilfe!

mfg glubsch
 

KSG9|sebastian

Top Contributor
du musst den writer flushen

Code:
PrintWriter blahblah = ...

blahblah.println(...);
blahblah.flush();


In denem Fall: ausgabe.flush()
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben