¿Cómo verificar EOF sin readLine ()?

Tengo un método que lee la siguiente línea en un archivo txt y hace algo. Tengo otro método que también necesita verificar EOF. Los dos métodos se llaman receptivamente dentro de un bucle.

Método 1:

trace = br.readLine();
   if (trace==null)
       break; // end of file

Método 2: Necesito verificar si hay EOF sin usar la misma técnica. De lo contrario, incrementaría el ptr utilizado para readLine ...

¿Hay alguna forma de lograr esto?

Gracias

Respuesta 1

¿Hay alguna forma de lograr esto?

La API BufferedReader no le permite hacer esto (*). Si realmente necesita hacer esto, deberá implementar una clase de Reader personalizada para hacerlo. Comenzaría con PushbackReader, agregaría un readLine()método y luego implementaría un método de prueba eof leyendo un carácter y empujándolo hacia atrás.

* Al leer las respuestas a ¿Puedo mirar en un BufferedReader ?, parece que el ready()método podría funcionar como una prueba EOF. Sin embargo, este es un artefacto de las implementaciones actuales de ready()la base de código estándar y podría decirse que es incorrecto (un error) de acuerdo con la especificación javadoc del método.

Respuesta: 2

Estoy usando un ScheduledThreadPoolExecutor y sospecho que a veces hay demasiadas solicitudes pendientes para la cantidad de subprocesos disponibles (sí ... probablemente necesito ajustar la cantidad de subprocesos). ...

Suponga que desea capturar la fuente de la página de una aplicación web en cada acción, por ejemplo, public void click () {getPageSource (); } public void type () {getPageSource (); } public void select () {...

No estoy seguro de mi problema. No obtengo dicha tabla cuando consulta la segunda tabla ... ambos están dentro del método onCreate db.execSQL ("CREATE TABLE" + DATABASE_TABLE + "(" + KEY_CBID ...

Estoy ejecutando un archivo jar simple usando el generador de procesos. El archivo jar simplemente calcula el cuadrado de un número pidiéndole al usuario que ingrese un número. Puedo ingresar un número en la consola pero el programa ...