Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
acceso a ficheros de texto
Enviado por celeste el día 5 de abril de 2006
Hola,
Necesito acceder a un fichero de texto para leer una serie de datos y lo hago con Connector.open("file:///ficheros/datos.txt"); pero no funciona, me sale
java.lang.SecurityException: Application not authorized to access the restricted API
Por favor alguien podria ayudarme?. Gracias.
Puedes utilizar en vez del Connector, una lectura por InputStream.. por ejemplo:
InputStream is = getClass().getResourceAsStream("/datos.txt");
char c;
while ((c = is.read()) != -1)
{
System.out.println((char)c);
}
is.close;
is = null;
Entonces en c te quedan los valores leidos del archivo
Espero que te sirva de algo.
El procedimiento anterior sirve cuando el fichero de texto esta incluido en el jar, mi problema es que el fichero de texto tengo q descargarlo desde un servidor y luego acceder a el y por tanto no esta incluido en el jar. Alguien puede ayudarme?. Por favor.
En ese caso hazlo como una conexión http, donde le colocas la URL del servidor y especificas el archivo. Por ejemplo te vas a descargar el archivo datos.txt de tu servidor que se llama http://www.miservidor.com, entonces haces:
String url = "http://www.miservidor.com";
InputStream in = null;
HttpConnection conn = (HttpConnection)Connector.open(url);
in = m_conn.openInputStream();
long contentLength = m_conn.getLength();
byte[] raw = new byte[(int)contentLength];
int length = in.read(raw);
in.close();
conn.close();
String cualquierString = new String(raw, 0, length);
//ahora tienes TODO el contenido del archivo en cualquierString
Re: Re: Re: Re: Re: Re: Re: acceso a ficheros de texto
Enviado por sercabar el día 10 de abril de 2006
Hola a los dos. Una cuestion. Yo lo que quiero es guardar unos datos en ese txt, o sea tengo una la lista de Strings, pues quiero copiarlos en un txt.Sabeis como puedo hacerlo? Os agradeceria mucho la ayuda.
Un saludo y gracias por todo.
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: acceso a ficheros de texto
Enviado por Esmitt el día 12 de abril de 2006
Si te soy sincero, yo nunca he estado en la necesidad de probarlo. ya que siempre utilzo el recordStore.
Pero estoy seguro de que si se puede, ya que existe el DataOutput como clase lo cual te permite hacerlo
enviar registros a un arxivo *.txt en un servidor http
Enviado por markuet el día 3 de junio de 2006
hola, Esmitt,
he leido el post que hay tuyo en este foro de como leer un archivo de *.txt desde el servidor.
¿se puede hacer el proceso inverso?, o sea, enviar registros a un archivo que tenga en mi servidor http,
hola he probado el programa que esta al comienzo, y es que me sale un error a la hora de compilarlo, no se mucho de j2me como ven, este es el error:
C:\\WTK25\\apps\\LeeArchivo\\src\\LeeArchivo.java:28: unreported exception java.io.IOException; must be caught or declared to be thrown
while ((c = is.read()) != -1){
^
1 error
como ven uso wireless toolkit 2.5 bajo windows para compilarlo,
me pueden ayudar??
TK
public void exitMIDlet() {
switchDisplayable (null, null);
destroyApp(true);
notifyDestroyed();
}
public void startApp() {
StringBuffer b = new StringBuffer();
TextBox t = null;
try {
long len = 0;
int ch = 0;
InputStream is = this.getClass().getResourceAsStream(\"/res/pantalla1.txt\");
for (int i = 0; i < c.getLength(); i++)
if ((ch = is.read()) != -1){
b.append((char) ch);
}
is.close();
c.close();
t = new TextBox(\"Http Test\", b.toString(), 11024, TextField.ANY);
}
catch (IOException ex) {
t = new TextBox(\"Error\", \"No se puede abrir el archivo\", 25, TextField.ANY);
}
t.addCommand(exitCommand);
t.setCommandListener(this);
display.setCurrent(t);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable s) {
if (c == exitCommand) {
destroyApp(false);
notifyDestroyed();
}
}
Estimados amigos requiere de su expertis para solucionar el siguiente problema:
Necesito que la aplicacion J2ME que trabaja en mi celular sea capaz de recibir SMS pero sin necesidad que le especifique el puerto/identificador por el cual estoy enviando el SMS ya que del otro dispositivo del que estoy mandando no tengo aplicacion Java(J2ME).
Lo consulto porque leido y parece ser que es un parametro obligatorio y sin el, este mensaje SMS no entra a la aplicacion que tengo en el otro celular el cual necesita la informacion de SMS para seguir trabajando la aplicacion.
Por favor ayudenme dandome alternativas...a esto.
¿Puedo establecer rangos de puertos en el modo Servidor de J2ME?