ResultSet

tinella

Erfahrenes Mitglied
hallo leute

Ich hab ein ResultSet mit Daten (Integer) gefüllt. Nun möchte ich den Inhalt des ResultSets in ein File hineinschreiben.

Kann mir jemand einen kleinen Tipp geben, wie ich das machen kann?



Herzlicher Gruss
Tinella
 
Hallo Tinella,

ich nehme an, du möchtest die Daten in eine Textdatei schreiben.

Einfach Dateiname und Resultset übergeben.

Code:
     public static boolean WriteTextDatei(String dateiname, rs ResultSet)
     {
     	boolean returnValue = true;
     	String ausgabe = "";
     	try
     	{
     		BufferedOutputStream outBufStream =
     			new BufferedOutputStream(
 				new FileOutputStream(dateiname));
     		while (rs.next())
     		{
 		    ausgabe += rs.getInt("Wert1") + " - " + rs.getInt("Wert2") + "\r\n";
     		}
     		outBufStream.write(ausgabe.getBytes());
     		outBufStream.flush();
     		outBufStream.close();
     	}
     	catch (IOException e)
     	{
     		e.printStackTrace();
     		returnValue = false;
     	}		
     	catch (SQLException ex)
     	{
     		ex.printStackTrace();
     		returnValue = false;
     	}
     	   return returnValue;
     }

Gruss
Bernd1984
 
@bernd
@christian
@thomas


vielen dank. ihr habt mir mehr oder weniger eine idee gebracht.

Bernd1984 ... das klappt bei mir nicht :( ehrlichgesagt...
Ich hab einen Codeschnipsel:

int apvNr = 0;
while (data.next()) {
System.out.println("APV NR: " + data.getInt(1));

...welcher mir die APV-Nummern auf den Bildschirm ausgibt. Diese stammen aus dem ResultSet.

Wie die Daten in das File kommen ist mir eigentlich relativ egal. Ob jetzt direkt wenn ich eine Zahl ausgelesen hab auf dem Bildschirm oder wie meine erste Idee aus dem ResultSet.

Ich würde dein Code gerne brauchen, jedoch geht er nicht :confused: . -> hat zwei Werte, weshalb zwei? Ist mir klar dass der Code nicht haargenau zu meinem Programm passt, aber ich peils einfach nicht.



Hilfe.
 
hier eine korrigierte Version (war ein kleiner Fehler drin :-(, hab es auch getestet)

in deiner main rufst du einfach
boolean test1 = WriteTextDatei("c:\\test.txt",data);

vorher Resultset öffnen (data ist ja wohl dein Resultset)

auf

und den code fügst du in deine Klasse ein

Code:
	public static boolean WriteTextDatei(String dateiname, ResultSet rs)
    	{
    		boolean returnValue = true;
    		String ausgabe = "";
    		try
    		{
    			BufferedOutputStream outBufStream =
    				new BufferedOutputStream(
 					new FileOutputStream(dateiname));
    				while (rs.next())
    				{
    				ausgabe += rs.getInt(1);
    			}
    			outBufStream.write(ausgabe.getBytes());
    			outBufStream.flush();
    			outBufStream.close();
    		}
    		catch (IOException e)
    		{
    			e.printStackTrace();
    			returnValue = false;
    		}		
    		catch (SQLException ex)
    		{
    			 ex.printStackTrace();
    			returnValue = false;
    		}
    		   return returnValue;
    	}


Bernd1984
 
hallo berndt1984

Vielen Dank für deine Hilfe. Das Codebeispiel hat mir hammermässig geholfen, danke dir





Wünsch dir noch nen schönen Tag!

Tinella
 
Zurück