elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Java ArrayList
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Java ArrayList  (Leído 5,747 veces)
josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Java ArrayList
« en: 20 Noviembre 2015, 17:42 pm »

Saludos! estoy teniendo un gran problema con mi aplicacion queria saber si aquiel pudiera ayudarme estoy tratando de organizar un documento y tengo muchas dificultades haciendolo quisiera saber si alquien aqui me pudiera ayudar se lo agradecería mucho.

Código:
import java.io.*; // needed for file and I/O classes
import java.util.*;

public class Assigment4
{
public static void main(String[] args) throws IOException
{

int count = 0;
int A = 0, AM = 0, B = 0, BM = 0, BP = 0, C = 0, CP = 0, D = 0, DP = 0, F = 0, I = 0, W = 0, transfer = 0, passing = 0;
String fileName; // to hold the file name

ArrayList<String> courseNo = new ArrayList<String>();
ArrayList<String> departCode = new ArrayList<String>();
ArrayList<String> department = new ArrayList<String>();
ArrayList<String> courseName = new ArrayList<String>();
ArrayList<String> course = new ArrayList<String>();
ArrayList<String> grade = new ArrayList<String>();
ArrayList<String> sectionNo = new ArrayList<String>();
String blank = "";
String blank2 = "";


//create a scanner object for keyboard input
Scanner keyboard = new Scanner(System.in);

// get the file name
//System.out.print("Enter the name of the file: ");
fileName = "Grades.txt";
//fileName = keyboard.nextLine();

// open the file
File theFile = new File(fileName);

//create a scanner object for to read the file
Scanner inputFile = new Scanner(theFile);

// use a while loop that types the document information
while(inputFile.hasNext())
{

blank = "";
blank2 = "";

//assign every document data to a different variable
courseNo.add(inputFile.next());
departCode.add(inputFile.next());
department.add(inputFile.next());
courseName.add(inputFile.next());
course.add(inputFile.next());
grade.add(inputFile.next());
sectionNo.add(inputFile.next());
blank = inputFile.nextLine();
blank2 = inputFile.nextLine();

if(!blank2.equals("") )
{

department.add(count, courseName.get(count) );
courseName.set(count, course.get(count) );
courseName.add(count, grade.get(count) );
course.set(count, sectionNo.get(count) );
grade.set(count, blank);
sectionNo.set(count, blank2);


}

else if(!blank.equals("") )
{

courseName.add(count, course.get(count) );
course.set(count, grade.get(count) );
grade.set(count, sectionNo.get(count) );
sectionNo.set(count, blank);

}


inputFile.nextLine();

count++;

}

for(int i = 0; i < count; i++)
{
if(grade.get(i).equals("A") )
A++;

else if(grade.get(i).equals("A-") )
AM++;

else if(grade.get(i).equals("B") )
B++;

else if(grade.get(i).equals("B-") )
BM++;

else if(grade.get(i).equals("B+") )
BP++;

else if(grade.get(i).equals("C") )
C++;

else if(grade.get(i).equals("C+") )
CP++;

else if(grade.get(i).equals("D") )
D++;

else if(grade.get(i).equals("D+") )
DP++;

else if(grade.get(i).equals("F") )
F++;

else if(grade.get(i).equals("I") )
I++;

else if(grade.get(i).equals("W") )
W++;

else if(grade.get(i).equals("Transfer") )
transfer++;

else if(grade.get(i).equals("Passing") )
passing++;

}

//for(int i = 0; i < count; i++)
// System.out.println(grade.get(i) );

System.out.printf("%-10s  %-5s %2s %s %s %s %s %s %s %s %s %s %s %s %s %s %s", "Course No.", "Subject",
"Course", "Course Title", "A", "A-", "B", "B-", "B+","C", "C+", "D", "D+", "F", "I", "W", "Transfer", "Passing\n" );

for(int i = 0; i < count; i++)
{

System.out.printf("%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s", courseNo.get(i),
departCode.get(i), department.get(i), courseName.get(i), course.get(i), grade.get(i), sectionNo.get(i));
}


}

}



este es el documento

Citar
4750   ACC   Accounting   Business Accounting   ACC101   A-   001
4750   ACC   Accounting   Business Accounting   ACC101   B+   001
4750   ACC   Accounting   Business Accounting   ACC101   B-   001
4750   ACC   Accounting   Business Accounting   ACC101   A   001
4750   ACC   Accounting   Business Accounting   ACC101   A   001
4750   ACC   Accounting   Business Accounting   ACC101   B+   001
4750   ACC   Accounting   Business Accounting   ACC101   A-   001
4750   ACC   Accounting   Business Accounting   ACC101   A   001
4750   ACC   Accounting   Business Accounting   ACC101   A   001
4750   ACC   Accounting   Business Accounting   ACC101   F   001
4750   ACC   Accounting   Business Accounting   ACC101   A   001
4750   ACC   Accounting   Business Accounting   ACC101   C+   001
4750   ACC   Accounting   Business Accounting   ACC101   A   001
3157   BIO   Biology   Anatomy   BIO320   A   001
3157   BIO   Biology   Anatomy   BIO320   W   001
3157   BIO   Biology   Anatomy   BIO320   D+   001
3157   BIO   Biology   Anatomy   BIO320   D   001
3157   BIO   Biology   Anatomy   BIO320   F   001
3157   BIO   Biology   Anatomy   BIO320   B   001
3157   BIO   Biology   Anatomy   BIO320   A-   001
3157   BIO   Biology   Anatomy   BIO320   A-   001
3157   BIO   Biology   Anatomy   BIO320   A   001
3157   BIO   Biology   Anatomy   BIO320   B-   001
3157   BIO   Biology   Anatomy   BIO320   A   001
3157   BIO   Biology   Anatomy   BIO320   C   001
3157   BIO   Biology   Anatomy   BIO320   A   001
3157   BIO   Biology   Anatomy   BIO320   C+   001
3494   BUS   Business   Marketing Fundamentals   BUS251   C   006
3494   BUS   Business   Marketing Fundamentals   BUS251   A   006
3494   BUS   Business   Marketing Fundamentals   BUS251   A-   006
3494   BUS   Business   Marketing Fundamentals   BUS251   D   006
3494   BUS   Business   Marketing Fundamentals   BUS251   A   006
3494   BUS   Business   Marketing Fundamentals   BUS251   A-   006
3494   BUS   Business   Marketing Fundamentals   BUS251   B+   006
3494   BUS   Business   Marketing Fundamentals   BUS251   B-   006
3494   BUS   Business   Marketing Fundamentals   BUS251   A-   006
4612   CMP   Computer Science   Java I   CMP110   A-   010
4612   CMP   Computer Science   Java I   CMP110   B   010
4612   CMP   Computer Science   Java I   CMP110   A-   010
4612   CMP   Computer Science   Java I   CMP110   A-   010
4612   CMP   Computer Science   Java I   CMP110   A   010
4612   CMP   Computer Science   Java I   CMP110   D   010
4612   CMP   Computer Science   Java I   CMP110   B+   010
4612   CMP   Computer Science   Java I   CMP110   B   010
4612   CMP   Computer Science   Java I   CMP110   A   010
4612   CMP   Computer Science   Java I   CMP110   A-   010
4188   CMP   Computer Science   Operating Systems   CMP320   C   106
4188   CMP   Computer Science   Operating Systems   CMP320   A-   106
4188   CMP   Computer Science   Operating Systems   CMP320   A-   106
4188   CMP   Computer Science   Operating Systems   CMP320   B+   106
4188   CMP   Computer Science   Operating Systems   CMP320   A   106
4188   CMP   Computer Science   Operating Systems   CMP320   D+   106
4188   CMP   Computer Science   Operating Systems   CMP320   A   106
4188   CMP   Computer Science   Operating Systems   CMP320   W   106


En línea

0roch1

Desconectado Desconectado

Mensajes: 123



Ver Perfil
Re: Java ArrayList
« Respuesta #1 en: 20 Noviembre 2015, 23:47 pm »

y qué se supone que se tiene que hacer?, cuál es el problema?. da más detalles y comenta tu duda puntual.


En línea

josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: Java ArrayList
« Respuesta #2 en: 22 Noviembre 2015, 19:36 pm »

el problema es que el programa no quiere compilar
En línea

0xFer


Desconectado Desconectado

Mensajes: 400



Ver Perfil
Re: Java ArrayList
« Respuesta #3 en: 22 Noviembre 2015, 20:08 pm »

SI compila, pero creo que lanza una excepción, ¿puedes colgar la excepción que te lanza?
En línea

Código
  1. int getRandomNumber(){
  2.    return 4; //chosen by fair dice roll
  3.              //guaranteed to be random
  4. }
josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: Java ArrayList
« Respuesta #4 en: 23 Noviembre 2015, 01:24 am »

Course No.            Subject         Course Course Title A A- B B- B+ C C+ D D+
 F I W Transfer4750                , ACC            , Business, ACC101, A-,
001, 4750       ACC     Accounting      Business Accounting     ACC101  B+
001, Exception in thread "main" java.util.MissingFormatArgumentException: Format
 specifier '%s'
        at java.util.Formatter.format(Formatter.java:2519)
        at java.io.PrintStream.format(PrintStream.java:970)
        at java.io.PrintStream.printf(PrintStream.java:871)
        at Assigment4.main(Assigment4.java:148)
En línea

0xFer


Desconectado Desconectado

Mensajes: 400



Ver Perfil
Re: Java ArrayList
« Respuesta #5 en: 23 Noviembre 2015, 01:36 am »

Código
  1. System.out.printf("%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s", courseNo.get(i),departCode.get(i), department.get(i), courseName.get(i), course.get(i), grade.get(i), sectionNo.get(i));

Observa cuántas veces aparece el %s dentro del printf, yo conté 18, pero tú sólo das 7 valores para esos 18 que se piden( esos 7 son courseNo.get(i),departCode.get(i), department.get(i), courseName.get(i), course.get(i), grade.get(i), sectionNo.get(i)); ) agrega lo que hace falta o quita lo que sobra.
« Última modificación: 23 Noviembre 2015, 01:38 am por 0xFer » En línea

Código
  1. int getRandomNumber(){
  2.    return 4; //chosen by fair dice roll
  3.              //guaranteed to be random
  4. }
josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: Java ArrayList
« Respuesta #6 en: 23 Noviembre 2015, 02:10 am »

Muchisimas gracias!!!
En línea

0xFer


Desconectado Desconectado

Mensajes: 400



Ver Perfil
Re: Java ArrayList
« Respuesta #7 en: 23 Noviembre 2015, 02:11 am »

Dnd  ::)
En línea

Código
  1. int getRandomNumber(){
  2.    return 4; //chosen by fair dice roll
  3.              //guaranteed to be random
  4. }
josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: Java ArrayList
« Respuesta #8 en: 23 Noviembre 2015, 03:23 am »

tengo otra pregunta porca en el while loop no se aloca la informacion en el array que quiero
En línea

0xFer


Desconectado Desconectado

Mensajes: 400



Ver Perfil
Re: Java ArrayList
« Respuesta #9 en: 23 Noviembre 2015, 03:53 am »

En la última linea de código( en donde imprimes los valores) te hace falta hacer un salto de linea después de imprimir una cadena( eso nadamás es para ver bien lo que se imprime). De todas formas al momento de leer una linea del archivo guardas varias veces ciertos valores de esa linea, te recomiendo que al leer una linea guardes toda esa linea en un solo String.

Código
  1. ArrayList<String> Lineas = new ArrayList<String>();
  2.  
  3. // use a while loop that types the document information
  4. while(inputFile.hasNext())
  5. {
  6.  
  7. String linea = inputFile.nextLine();
  8. Lineas.add(linea);
  9. inputFile.nextLine();
  10.  
  11. count++;
  12. }

luego imprimes cada linea:
Código
  1. for(int i = 0; i < count; i++)
  2. {
  3.    System.out.printf("%s \n", Lineas.get(i));
  4. }
   

Si no te gusta así entonces en tu código ve revisando los valores que leas varias veces, por ejemplo:

Código
  1. courseNo.add(inputFile.next());
  2. departCode.add(inputFile.next());
  3. department.add(inputFile.next());
  4. courseName.add(inputFile.next()); //Ok, courseName ya está
  5. course.add(inputFile.next());
  6. grade.add(inputFile.next());
  7. sectionNo.add(inputFile.next());
  8. blank = inputFile.nextLine();
  9. blank2 = inputFile.nextLine();
  10.  
  11. if(!blank2.equals("") )
  12. {
  13.  
  14. department.add(count, courseName.get(count) );
  15. courseName.set(count, course.get(count) );
  16. courseName.add(count, grade.get(count) );  //courseName de nuevo?
  17. course.set(count, sectionNo.get(count) );
  18. grade.set(count, blank);
  19. sectionNo.set(count, blank2);
  20. }
« Última modificación: 23 Noviembre 2015, 03:59 am por 0xFer » En línea

Código
  1. int getRandomNumber(){
  2.    return 4; //chosen by fair dice roll
  3.              //guaranteed to be random
  4. }
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
java ArrayList en C++
Programación C/C++
<<<-Basura->>> 5 8,529 Último mensaje 4 Abril 2013, 21:48 pm
por naderST
Arraylist de java en c++
Programación C/C++
alvar0ne 0 1,571 Último mensaje 7 Mayo 2013, 05:26 am
por alvar0ne
JAVA - ArrayList - Iterator - Error en consola
Java
Santi73Arg 3 4,106 Último mensaje 23 Noviembre 2017, 05:30 am
por rub'n
Cargar y Guardar un arraylist en un .txt JAVA
Java
joseandres04 2 4,323 Último mensaje 21 Noviembre 2017, 03:59 am
por joseandres04
[Java] Repintar una figura y utilizar un ArrayList en un JFrame [Resuelto]
Java
Ahinoam 4 4,984 Último mensaje 4 Diciembre 2017, 20:46 pm
por Ahinoam
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines