¿Cómo podemos utilizar el lenguaje C para convertir el vídeo obtenido por cámaras normales en datos que puedan procesarse?
El flujo de caracteres del archivo JPG leído de la base de datos se convierte en el código relevante para mostrar la imagen en la página
Si convierte la imagen, se convierte en un vídeo flujo
p>
public void doPost(HttpServletRequest req, HttpServletResponse res)
lanza ServletException, IOException {
ServletOutputStream out = res.getOutputStream() ;
Declaración dispStmt = null, setStmt = null;
intente {
dispStmt = Con.createStatement();
setStmt = Con.createStatement();
p>setStmt.executeUpdate("set textsize 2048000");
} catch (Excepción e) {
out.println ("Error al crear declaración:" + e. toString() + "
");
}
Cadena ls_sql = null;
ls_sql = req.getParameter("ImageSQL");
if (ls_sql == null)
ls_sql = "";
ls_sql = ls_sql.trim();
if (! ls_sql.equals("")) {
ResultSet rs = null;
prueba {
rs = dispStmt .executeQuery(ls_sql);
} catch (Excepción e) {
System.out.println(
"No se puede ejecutar la declaración" + e.toString () + "
");
}
prueba {
mientras (rs.next()) {
prueba {
res .setContentType("image/jpeg");
InputStream es = rs.getBinaryStream(1);
int size = is.available ();
byte[] bzp = nuevo byte[tamaño];
is.read(bzp);
out.write(bzp);
} catch (Exception e) {
System.out.println("Error de imagen al escribir: " + e.toString()); p> p>
}
}
rs.close();
} captura (Excepción e) {
System.out.println("No se puede cerrar la declaración" + e.toString());
}
}
intente {
dispStmt.close();
} catch (Excepción e) {
System.out.println("Error de declaración de cierre: " + e.toString());
}
out.close();
}
--------------- -------------------------------------------------- -- -------------
Adjunto otro:
El código fuente principal que lee imágenes de la biblioteca y las muestra en la página.
<%@ página contentType="text/html;charset=iso8859_1"%>
<%@ página import="java.sql.ResultSet"%>
<%
String sql = "seleccionar * de imágenes";
ResultSet rs = query.executeQuery(sql);
rs.next();
InputStream in = rs.getBinaryStream("imagen");
ServletOutputStream sos = respuesta .getOutputStream();
int len = 0;
byte[] b = nuevo byte[1024];
response.reset();
p>
response.setContentType("imagen/gif");
while((len = in.read(b)) > 0)
sos.write(b ,0,len);
in.close();
sos.close();
query.cls();
%>
Si está escribiendo en un archivo, simplemente defina sos
como DataOutputStream sos = new DataOutputStream( nuevo BufferedOutputStream(nuevo FileOutputStream("/a.gif")));