D
developer
Gast
Hallo,
ich habe schon das Forum nach Blob u.ä. untersucht, jedoch zu keiner Lösung gefunden.
Ich habe eine Access DB mit 8 Feldern, wobei das 8. Feld ein OLE, also BLOB Feld ist.
Nun möchte ich eine String[][] reinschreiben, was auch funktioniert:
Das Problem liegt nun beim Auslesen:
Mit folgendem Code bekomme ich immer eine Fehlermeldung (java.io.StreamCorruptedException: invalid stream header)
wo liegt der fehler?
Bin um jede Hilfe dankbar!!!
ich habe schon das Forum nach Blob u.ä. untersucht, jedoch zu keiner Lösung gefunden.
Ich habe eine Access DB mit 8 Feldern, wobei das 8. Feld ein OLE, also BLOB Feld ist.
Nun möchte ich eine String[][] reinschreiben, was auch funktioniert:
Code:
public void operationtest() throws IOException, SQLException {
Connection conn = getConnection();
Statement stat = conn.createStatement();
String [] zt = {"A","B","C"};
ByteArrayOutputStream bout = new ByteArrayOutputStream();
ObjectOutputStream out = new ObjectOutputStream(bout);
out.writeObject(zt);
out.flush();
byte b [] = bout.toByteArray();
stat.execute("INSERT INTO rechnungen VALUES ('1022','44','3','3','2006','Test','Test','"+b+"')");
stat.close();
conn.close();
}
Das Problem liegt nun beim Auslesen:
Mit folgendem Code bekomme ich immer eine Fehlermeldung (java.io.StreamCorruptedException: invalid stream header)
Code:
.
.
.
Connection conn = getConnection();
Statement stat = conn.createStatement();
ResultSet result=stat.executeQuery(command);
byte b[];
ObjectInputStream in;
//Datenbank wird in ArrayList eingelesen
while(result.next()){
int tmp=result.getInt(1);
String tmp1=result.getString(2);
String tmp2=result.getString(3);
.
.
.
arrayR.get(0).add(0, tmp);
arrayR.get(1).add(0, tmp1);
.
.
.
b = result.getBytes(8);
in = new ObjectInputStream(new ByteArrayInputStream(b));
int []zt = (int[])in.readObject();
System.out.println(zt);
wo liegt der fehler?
Bin um jede Hilfe dankbar!!!