arrglos en java
Publicado por lordbrayan (1 intervención) el 28/03/2008 15:50:03
buenas, es que tengo un programa ennjava para capturar 4 dimensiones planta, estacion, obrero y unidades fabricadas las guardo pero solo puedo lograr que muestre las 3 primeras, si alguien me puede ayudar se lo agradeceria mucho ya que es para mañana,
gracias y envio el programa:
import java.io.*;
class arregloTETRA {
static String numero[], est[], uni[], plantas=null;
static int cnt=0;
public static void main(String[] args) throws IOException {
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
int opcion=0;
String crear=null, otra=null;
numero = new String[1000];
est = new String [1000];
uni= new String [1000];
do {
System.out.println("Que desa hacer");
System.out.println("1)ingresar datos de una planta");
System.out.println("2)mostrar datos de una planta");
System.out.println("3)Salir");
opcion=Integer.parseInt(buffer.readLine());
if (opcion==1) {
System.out.println("numero de la planta");
plantas=buffer.readLine();
do {
System.out.println("estacion:");
numero[cnt]=buffer.readLine();
System.out.println("nombre del obrero:");
est[cnt]=buffer.readLine();
System.out.println("dia y unidades fabricadas:");
uni[cnt]=buffer.readLine();
System.out.println("desea ingresar mas datos? (S/N)");
otra=buffer.readLine();
cnt++;
} while (otra.equals("s")||otra.equals("S"));
System.out.println("Crear? (S/N)");
crear=buffer.readLine();
if (crear.equals("s")||crear.equals("S")) {
escribir(plantas,numero,est, uni);
}
}
if (opcion==2) {
System.out.println("numero de planta?");
plantas=buffer.readLine();
leer(plantas);
}
} while (opcion!=3);
}
public static void escribir(String planta, String num[], String estacion[], String unid[]) {
char txt;
String entrada="";
for (int l=0; l<cnt; l++) {
entrada=entrada+("@" + num[l] + "," + estacion[l] );
}
try {
File outputFile = new File(planta + ".txt");//guarda l archivo .txt con el numero de la planta
FileOutputStream fos = new FileOutputStream(outputFile);
for (int k=0; k<entrada.length(); k++) {
fos.write(entrada.charAt(k));
}
fos.close(); //importante , no dejarse abierto canales
} catch (FileNotFoundException e) {
System.err.println("FileStreamsTest: " + e);
} catch (IOException e) {
System.err.println("FileStreamsTest: " + e);
}
}
public static void leer (String planta) {
File archivo = null;
try {
archivo = new File (planta + ".txt");//lee el archivo .txt con el numero de la planta
String linea;
FileReader fr = new FileReader (archivo);
BufferedReader br = new BufferedReader(fr);
while((linea=br.readLine())!=null) {
for (int k=0; k<linea.length(); k++) {
if (linea.charAt(k)==44) {
System.out.println();
System.out.println("obrero: ");
k++;
}
if (linea.charAt(k)==64) {
System.out.println();
System.out.println("estacion: ");
k++;
}
System.out.print(linea.charAt(k));
}
}
fr.close();
System.out.println("");
}
catch(IOException e){
System.out.println(e);
}
}
}
gracias y envio el programa:
import java.io.*;
class arregloTETRA {
static String numero[], est[], uni[], plantas=null;
static int cnt=0;
public static void main(String[] args) throws IOException {
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
int opcion=0;
String crear=null, otra=null;
numero = new String[1000];
est = new String [1000];
uni= new String [1000];
do {
System.out.println("Que desa hacer");
System.out.println("1)ingresar datos de una planta");
System.out.println("2)mostrar datos de una planta");
System.out.println("3)Salir");
opcion=Integer.parseInt(buffer.readLine());
if (opcion==1) {
System.out.println("numero de la planta");
plantas=buffer.readLine();
do {
System.out.println("estacion:");
numero[cnt]=buffer.readLine();
System.out.println("nombre del obrero:");
est[cnt]=buffer.readLine();
System.out.println("dia y unidades fabricadas:");
uni[cnt]=buffer.readLine();
System.out.println("desea ingresar mas datos? (S/N)");
otra=buffer.readLine();
cnt++;
} while (otra.equals("s")||otra.equals("S"));
System.out.println("Crear? (S/N)");
crear=buffer.readLine();
if (crear.equals("s")||crear.equals("S")) {
escribir(plantas,numero,est, uni);
}
}
if (opcion==2) {
System.out.println("numero de planta?");
plantas=buffer.readLine();
leer(plantas);
}
} while (opcion!=3);
}
public static void escribir(String planta, String num[], String estacion[], String unid[]) {
char txt;
String entrada="";
for (int l=0; l<cnt; l++) {
entrada=entrada+("@" + num[l] + "," + estacion[l] );
}
try {
File outputFile = new File(planta + ".txt");//guarda l archivo .txt con el numero de la planta
FileOutputStream fos = new FileOutputStream(outputFile);
for (int k=0; k<entrada.length(); k++) {
fos.write(entrada.charAt(k));
}
fos.close(); //importante , no dejarse abierto canales
} catch (FileNotFoundException e) {
System.err.println("FileStreamsTest: " + e);
} catch (IOException e) {
System.err.println("FileStreamsTest: " + e);
}
}
public static void leer (String planta) {
File archivo = null;
try {
archivo = new File (planta + ".txt");//lee el archivo .txt con el numero de la planta
String linea;
FileReader fr = new FileReader (archivo);
BufferedReader br = new BufferedReader(fr);
while((linea=br.readLine())!=null) {
for (int k=0; k<linea.length(); k++) {
if (linea.charAt(k)==44) {
System.out.println();
System.out.println("obrero: ");
k++;
}
if (linea.charAt(k)==64) {
System.out.println();
System.out.println("estacion: ");
k++;
}
System.out.print(linea.charAt(k));
}
}
fr.close();
System.out.println("");
}
catch(IOException e){
System.out.println(e);
}
}
}
Valora esta pregunta


0