// Pic字段数据类型是 OLE对象,对应存储一副jpg图片 // 获取access库中图片信息
public  void getPicInfo(){
String strsql = "select Pic from test where id = 2";
ResultSet resultSet = conndao.getRes(strsql);
if(resultSet!=null)
{
try
{
while(resultSet.next())
{
byte b[] = new byte[200*1024];
int c=0;
InputStream is = resultSet.getBinaryStream("Pic");
    c = is.read(b);
    int pos = 0;
       System.out.println( ""+c +"  "+b.length );
    for (int j = 0; j < b.length; j++)
{
  if(b[j] == new Integer(0xFF).byteValue()
  && b[j+1] == new Integer(0xD8).byteValue()
  && b[j+2] == new Integer(0xFF).byteValue()
  && b[j+3] == new Integer(0xE0).byteValue())
  {
  pos = j;
  break;
  }
}
    
       File f = new File("Icon\\demo.jpeg");//先指定一临时图片,存放从数据库中读出的图片
       OutputStream fos = new FileOutputStream(f,false);
       
       fos.write(b, pos, c-pos);
       fos.flush();
       fos.close();
       is.close();
System.out.println(pos+"  --ok");
}
}
catch (Exception e)
{
e.printStackTrace();
}finally{
conndao.closeResultSet(resultSet);
}
}
}问题是: 读出的数据大小跟文件的实际大小差好多,图片无法生成!
求解答!