JAVA: ¿Cómo leer datos con Pipe?

Estoy escribiendo un programa en JAVA que necesito que lea datos desde entrada estándar y también usando pipe. Estoy aprendiendo y de momento me liá un poco. Agradecería si me pudieras indicar cómo debo hacerlo. No tengo muy claro como indicarle al programa en qué formato están entrando los datos en cada momento y tampoco tengo claro el uso de pipe. Puedo programarlo para que reciba datos de entrada estándar pero introduciendo argumento por argumento.
La entrada estándar será, en este caso concreto, de la forma:
C:\ java nombreprograma <fichero.txt <INTRO>
y la entrada usando pipe:
C:\ type archivo.txt |   java nombreprograma  <INTRO>
La salida será siempre estándar.

1 Respuesta

Respuesta
A ver si me aclaro que no tengo claro que necesitas
Es decir, ¿tienes qué hacer un programa que lea un fichero que se le pase como parámetro en la llamada
c:\java nombreprograma < fichero.txt
y que trate ese fichero (lea el contenido y haga algo, no?
Bueno, antes que nada si quieres pasar el fichero por parámetro sería el comando
c:\java nombreprograma fichero.txt (sin el <)
Entonces dentro deberías hacer algo así
public static void main(String [] arg) { File archivo = null; FileReader fr = null; BufferedReader br = null; try { // Apertura del fichero y creacion de BufferedReader para poder // hacer una lectura comoda (disponer del metodo readLine()). archivo = new File (arg[1]); fr = new FileReader (archivo); br = new BufferedReader(fr); // Lectura del fichero String linea; while((linea=br.readLine())!=null) System.out.println(linea); } catch(Exception e){ e.printStackTrace(); }finally{ // En el finally cerramos el fichero, para asegurarnos // que se cierra tanto si todo va bien como si salta // una excepcion. try{ if( null != fr ){ fr.close(); } }catch (Exception e2){ e2.printStackTrace(); } }
Si te fijas y formateas bien esto (no se porque me lo copia así de mal) en la linea dentro del buble while tienes en la variable linea el contenido de la línea.
Despues entiendo q deberas hacer + cosas con la información del fichero, ¿no?
¿Me puedes aclarar que necesitas con Pipe?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas