Añadir datos a ficheros con módems Siemens-Cinterion desde java
Escrito por blogElectronica en 2.DISPOSITIVOS (práctico), 4.PROGRAMACIÓN, Comunic. GSM/GPRSEn bastantes ocasiones me ha llegado la pregunta de cómo añadir más datos a un fichero ya existente dentro de la memoria flash de nuestros módems TC65 o XT65 (o de los terminales MTX de Matrix). Por ello hoy voy a poner un pequeño programa java para que ayude a quien no sepa cómo hacer esto. Es muy sencillo.
Básicamente consiste en utilizar el objeto OutputStream en lugar de DataOutputStream (DataOutputStream hereda de OutputStream) que seguro visteis en el post donde tengo la mayoría de los ejemplos java.
Vamos con el ejemplillo de hoy. Vamos a suponer que tenemos un fichero en el sistema de ficheros del módem de nombre “A:/fichero.txt” y con el texto “hola“, por lo que si no lo tienes, crea uno y ponlo dentro del módem.
/* Creamos un objeto de la clase FileConnection y especificamos el nombre del fichero a abrir, que pondremos fichero.txt */
FileConnection objFileConnection = (FileConnection)
Connector.open(“file:///a:/fichero.txt”);/*Averiguamos el tamaño actual del fichero*/
long tamanoFichero=objFileConnection.fileSize();/*Creamos un objeto de la clase OutputStream, con el que escribir datos en el archivo y le pasamos como parámetro la longitud actual del fichero, de tal modo que el “puntero” de escritura del fichero sea el final del fichero*/
OutputStream objOutputStream = objFileConnection.openOutputStream(tamanoFichero);/*Escribimos un texto “Adios” dentro del fichero que acabamos de abrir (o crear)*/
objOutputStream.write(“adios”.getBytes());/*Mandamos escribir todo lo que quede en el buffer previo al cierre del mismo*/
objOutputStream.flush();/*Cerramos el objeto*/
objOutputStream.close();/*Cerramos el fichero*/
objFileConnection.close();
Una vez ejecutemos la aplicación, si miráis el contenido de fichero.txt veréis que el contenido es “holaadios“, es decir, no sobreescribe el contenido que había en el fichero sino que añade los datos.
En breve pondré unos cuantos posts de dos modelos nuevos de terminales, el MTX65+Gv3 (módem gprs terminal con GPS) y el nuevo MTX65-ULP (módem gprs ultra low power). Veremos primero sus características y luego entraré en detalle en la programación de ambos equipos atendiendo a las peculiaridades de cada uno para que todo el mundo sepa perfectamente como utilizarlos. Estoy convencido de que os van a gustar. Esto será dentro de unos días.
Espero que te haya resultado de interés.
Post relacionados:
- Cómo usar ficheros con módems de Siemens desde Java. Como seguro ya sabéis, varios de los modelos de módems...
- Cómo obtener la hora con los terminales MTX y módems Siemens / Cinterion Llevo casi un mes sin escribir en blogElectronica. Y es...
- Autoarranque de aplicaciones Java en módems Siemens Muy buenas. Hoy voy a poner un pequeño post relacionado con...
- Ejemplo FTP Java para módems Siemens Hoy pongo un brevísimo post con un nuevo ejemplo Java...
- Ejemplo envío Email Java para módems Siemens / Cinterion Esta mañana he estado un buen rato realizando pruebas de envío...
Etiquetas: cinterion, ejemplo java, j2me, java, mtx65, Siemens, tc65, xt65
Y como seria para escribir en el fichero?
Perdón, quise decir: para LEER datos del fichero
Hola Paul,
tienes un ejemplo de cómo leer aquí:
http://www.blogelectronica.com/ejemplos-java-j2me-modem-gprs-siemens/
Salu2.
Hola blog me da gusto q hayas puesto este tipo de bolg q nos ayuda a programar un TC -65 y te lo agradezco… En cuanto al programa quisiera hacere una consulta es posible obtener linea a linea lo que contiene el archivo?.. por ejemplo tengo HOLA BLOG Electronica en tres linneas diferentes en mi archivo txt y lo que kiero es obtener HOLAen un array BLOG en otro array y asi sucesivamente es posible ello?.. te agradeceria tu pronta respuesta.
Hola Ana,
en J2ME no existe como en java el método readline(), por lo que no te queda otra, en el caso de que los registros no sean de igual tamaño que leer el archivo caracter a caracter hasta encontrar los /r/n que indican final de línea.
Salu2.
he visto en algunos hardware que el modem maneja, una memoria sd externa , al crear un archivo este como tal lo crea en FAT? como hago para activar y manejar la SD actualmente tengo en mi disposicion el tc65, tc65i y un xt75 agradezco su informacion poseo el dsb75_hw que tiene socket para ese tipo de memoria, por eso la pregunta
Hola Andrés,
es complejo, tendrías que averiguar el protocolo de lectura/escritura en la SD o implementar las funciones para crear una FAT. Una vez vi un cliente que se había creado sus propias librerías en java para FAT, y tenían su complejidad.
Salu2.