Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - Refer

Páginas: [1]
1
Hola, buenas noches a todos, Me ha surgido una duda cuando estaba usando operadores logicos.

Resulta que java evalua las condiciones de una decision mientras el operador siga funcionando (o mejor dicho evaluacion en cortocircuito) he notado que al operador
AND logico (&&) le tiene efecto dicha condicion por ejemplo:

Código: [Seleccionar]
int n = 2;

if(n== 5 && ++n == 4)

el control del programa evalua la condicion n == 5 que es igual a falsa, por lo tanto la decision seria falsa al saber que uno de las 2 condiciones no es verdadera, por lo tanto la exprecion ++n de la segunda condicion, no se ejecuta.

La DUDA es cuando uso OR logico

Código: [Seleccionar]
int n = 2;

if(n== 5 || ++n == 4)

La decision termina siendo verdadera, ya que al no ser verdadera la primera condicion, se determina si la segunda condición es verdadera (la cual si es) y ++n se ejecuta, dado que la maquina virtual evalua la exprecion ++n == 4 y luego decide que es falsa.

Entonces ¿Para que usaria el operador OR logico booleano (|) si el efecto es el mismo que || ?

la cosa seria diferente si usara el operador AND logico booleano (&), A ese si le veo mas utilidad.

Gracias a todos, Buenas noches!

2
Buenas a todos, Estoy haciendo un registro en un archivo Txt pero tengo un problema

El problema ocurre en la Fase 2 me tira error, no se porque aun.
El objetivo del metodo es editar un archivo txt(registro de cuentas):
 
 Si el archivo no existe, creara otro nuevo.
 Si el archivo no contiene ninguna cuenta previa se creara la cuenta no. 1 con los datos ingresados.
 Si el archivo existe y no esta vacio, se procedera a añadir cuentas  enumeradas. pero sin que el numero de registro sea igual a los existentes.

Este seria un ejemplo de una cuenta y su numero de registro.

//registro #1
|
nombre: PRUEBA
contraseña: prueba
edad: 20
genero: Hombre
|

-La Fase1 almacena los numeros de registro en string, ejemp.  1,2,3,4,5,6,7,8,

-La Fase2 se optiene los numero de usuarios y se comparan para crear uno nuevo que no sea igual al registro siguiente. El problema surge en la excepcion Fase2(no se en que parte de ella)

- La Fase3 asigna un nuevo registro con distinto numero y los valores introduccidos en los campos de textos de la GUI.

Código: [Seleccionar]
private void jLabel14MouseClicked(java.awt.event.MouseEvent evt) {                                     
        reUsuario = tfUsuario.getText();
        reContra = tfContraseña.getText();
        reEdad = tfEdad.getText(); reUsuario = reUsuario.toUpperCase();
        reGenero = String.valueOf(jComboBox1.getSelectedItem());
        int lineasLeidas = 1;
           
       
            Boolean textVacio = null;
            File text = new File("C:\\Users\\HM\\Desktop\\Interfaz\\prueba.txt");
            FileReader archivoLector = null; BufferedReader lector = null; FileWriter archivo = null;
           
            try{
            if(!text.exists()){
                System.out.print("El archivo: "); System.err.print(text); System.out.print(" no existe, se creara uno con la misma ruta.");
                archivo = new FileWriter(text);
                archivo.close();}
            }catch(Exception textExist){
                System.err.println("No se pudo crear un nuevo archivo para registrar las cuentas");
            }
           
            //Registros que existen en el text        //numero del registro a crear
            String registros ="";                          int numRegistro=0;
                   
                    try{   
                    //Lectores del text
                    archivoLector = new FileReader(text);
                    lector = new BufferedReader(archivoLector);
                   
                    //Escritor del text
                    archivo = new FileWriter(text,true);
                    }catch(Exception x0012){
                        System.err.println("No se pudieron inizializar los flujos");
                    }
                   
            //Leer el registro y optener los registros encontrados
            String Lineas_registros="";
            try{
            if((Lineas_registros = lector.readLine())== null){
                //ingreso de datos al archivo
                archivo.write("//registro #1"+"\r\n");
                archivo.write("|"+"\r\n");
                archivo.write("nombre: "+reUsuario+"\r\n");
                archivo.write("contraseña: "+reContra+"\r\n");
                archivo.write("edad: "+reEdad+"\r\n");
                archivo.write("genero: "+reGenero+"\r\n");
                archivo.write("|"+"\r\n");
                archivo.close();
                textVacio = true;
                lector.reset();
            }else{
                textVacio = false; System.out.println("NO ES NULO");}
            }catch(Exception llenandoVacio ){
                System.err.println("Error llenando el archivo vacio.");
            }
           
            //El text si existia y no estaba sin ningun registro
            if(!textVacio){
            try{
               
            try{
                           
                int totalRegistros = 1;
            while((Lineas_registros = lector.readLine())!= null){
               
                if(Lineas_registros.charAt(0) == '/' && Lineas_registros.charAt(1) == '/'){
                    registros = registros + Lineas_registros.substring(12)+",";
                    System.out.print("FASE 1: OK ");
                    System.out.println("["+lineasLeidas+"] "+"Total de registro encontrados: "+totalRegistros+" en la linea no."+lineasLeidas+"  ("+registros+")");
                    totalRegistros++;
                }
                lineasLeidas++;
            }}catch(Exception Fase1){               
                System.err.println("FASE1: ERROR");}
           
            System.out.println("Registros: "+registros+" + EL NUEVO REGISTRO");
           
            try{
            //Escribir nuevo registro  Se agregaran numeros hasta llegar a una ',' como resultado
            //                                  comparar si ese registro existe
            Boolean creoUsuario=false, inicioChars=false; String charsDelRegistro="";
            while(creoUsuario != true){
               
                String elRegistro; int caractesRecorridos = 0; int inicioPie=0;
                if(registros.charAt(caractesRecorridos) != ','){
                    charsDelRegistro += Lineas_registros.charAt(caractesRecorridos);
                    if(!inicioChars){
                        inicioPie= caractesRecorridos;
                        inicioChars= true;
                    }       
                }
               
                else if(Lineas_registros.charAt(caractesRecorridos) != ','){
                    elRegistro = Lineas_registros.substring(inicioPie, caractesRecorridos-1);
                    //Buscar si el valor de elRegistro existe o esta registrado en text
                    if(Lineas_registros !=null ||Lineas_registros.contains(elRegistro))
                        System.out.println("El registro ya existe");
                    else{
                        numRegistro = caractesRecorridos;
                        creoUsuario = true;
                        System.out.println("Se creo otro registro no."+numRegistro);}
                       
                }
                System.out.println("Numero de caracteres Recorridos: "+caractesRecorridos);
                caractesRecorridos++;
            }}catch(Exception Fase2){
                System.err.println("Fase 2:Error");
            }
       
        try{   
        //ingreso de datos al archivo
            archivo.write("//registro #"+numRegistro+"\r\n");
            archivo.write("|"+"\r\n");
            archivo.write("nombre: "+reUsuario+"\r\n");
            archivo.write("contraseña: "+reContra+"\r\n");
            archivo.write("edad: "+reEdad+"\r\n");
            archivo.write("genero: "+reGenero+"\r\n");
            archivo.write("|"+"\r\n");
            archivo.close();
            JOptionPane.showMessageDialog(null,"Se ha registrado la cuenta a nombre de: "+reUsuario);
           
        }catch(Exception Fase3){
            System.err.println("Fase 3:Error");
        }
        }catch(Exception crearCuenta){
            System.err.println("No se pudo crear una nueva cuenta");
        }}

        layerRegistro.setVisible(true);
        jLayeredPane1.setVisible(false);
       
           
    }                                     

Por favor ayudenme para ya terminar mi proyecto xd

3
Buenas a todos, tengo un problema al querer editar un fichero de texto, la cosa va asi.
Cuando escribo algo en un TextArea y lo guardo, este se almacena en el fichero registroDeUsuario.txt este se guarda, pero lo que yo busco es que no se guarde lo mismo.

Algo como esto:

Nombre: Hola como estas
y al mandarlo varias veses al archivo txt archivo pasa esto:
Marco: Hola como estas
Marco: Hola como estas
Marco: Hola como estas


 
Código: [Seleccionar]
                                             
 private void gurdarParaHistorial(){
        File registroTxt = new File("C:\\registroDeUsuario.txt");
        String historial2 = new String(campoTexto.getText());
        StringTokenizer st = new StringTokenizer(contenidoTexto,"\n");
       
        while(st.hasMoreTokens()){
            String linea = st.nextToken();
            try{
               
                FileWriter guardarTexto = new FileWriter(historial2,true);
               
                       
                guardarTexto.write(line+"\r"+"\n");
                guardarTexto.close();
            }catch(Exception error){
                JOptionPane.showMessageDialog(null,"Error al guardar el texto al historial");
            }
           
        }
    }         

Nesecito algo que  que compruebe que todo lo que escribio no existe o no esta registrado para poderlo añadir.

4
Hola, soy nuevo en Java. Siempre que inicio mi programa he interactuo con el ingresando datos como Strings o Ints
para probarlo, no se guarda los datos que he ingresado, quisiera saber como conservar los valores de las variables para despues usarlos o editarlos por ejemplo:

En un login.

El programa consiste en ingresar mi nombre y contraseña, alli mismo tengo un registro, pero el registro nunca se conserva y tengo que re-registrarme o añadiendo los datos en el codigo del programa.

5
Hola a todos. necesito un que me ayude a eliminar el ultimo carácter de una cadena para despues eliminarlo, Un ejemplo: Hola.

Yo tenia pensado hacer algo como esto:

String Cadena = Hola. //Cadena
CaracterBasura = Cadena.length() //Optiene la cantidad de caracteres de la cadena Como resultado la posicion del ultimo caracter.

If(Cadena.POSICION DEL ULTIMO CARACTER == ".")
      Cadena.metodoParaEliminarElCaracter


Bueno, He encontrado un metodo para hacer el mismo efecto pero no es muy flexible,
seria asi:

Código: [Seleccionar]
import java.util.Scanner;

class Datos{
    public static void main(String[]args){
        Scanner scanner = new Scanner(System.in);
        System.out.print("Escribe: ");
        String cadena= scanner.nextLine();
        cadena = cadena.toUpperCase();
       
       
        System.out.println("Cantidad de caracteres: "+cadena.length());
       
        if(cadena.contains("."))
        cadena = cadena.substring(0,cadena.length()-1);
       
        System.out.println(cadena);
    }
}

el metodo substring no es muy flexible, tampoco la condiccion if no es muy solida.

Por favor ayudenme a encontrar algun metodo cual me de el resultado y sea mas dinamico.

HOLA.   ---> HOLA

6
Tengo un problema con el resultado que me deberia de dar al ingresar un valor(edad) a la consola de NetBeans, a edad le tengo asignado un metodo de cual optendra un valor ingresado por el usuario en la consola. Pero al ingresar un valor como por ejemplo:
 
 edad= 20  me devuelve un valor de 50 en el enunciado
 System.out.println(" Su edad es: " + edad)

Código: [Seleccionar]
import java.io.IOException;

public class cero{
    public static void main(String args[])throws IOException
    {
        int edad= 0;
        System.out.print("Ingrese su edad: ");
        edad = System.in.read();
        System.out.println("Su edad es: " + edad);
       
    }
}

Por favor ayudenme, no entiendo donde esta el error  :(

7
Tengo una duda en el metodo Action al aplicarle un valor ingresado a la variable "numero".

 mi duda es con Integer, lo que yo entiendo alli se interpretaria asi. El valor de un numero sera el ingresado mediante el campo de texto y este se guardara en como objeto, el objeto sera convertido a String y no entiendo muy bien lo de Integer.parseInt

Código: [Seleccionar]
import java.applet.Applet;
import java.awt.*;

public class cero extends Applet{
    Label Texto;
    TextField CampoDeTexto;
    int numero;
    int suma;
   
    public void init(){
        Texto = new Label("Ingrese un numero para ser multiplicado por otro");
        CampoDeTexto = new TextField( 5 );
        add(Texto);
        add(CampoDeTexto);
        numero = 0;
       
    }
   
    public boolean action(Event e, Object o){
        numero = Integer.parseInt(o.toString());
        CampoDeTexto.setText("");
        suma= numero + suma ;
        showStatus(Integer.toString(suma));
        return false;
    }
   
}

Tambien en ShowStatus vuelve aparecer Integer, solo que alli dice que se mostrara el resultado optenido por el metodo Integer.toString(suma) Integer se convertira en String y no se porque la variable suma esta colocado alli.

Seria de mucha ayuda que me ayudaran a despejar mis dudas aclarando mas el concepto de esos metodos :). Gracias!

8
Hola, buenas tardes ;D. quisiera preguntarles algunas cosas sobre el metodo Init en applets

1-¿Para que sirve el metod Init?

2-¿Es obligatorio usar ese metodo?

lo que mas me inquieta
3-¿En que casos debo usarlo?

Agradezco su atencion y la aprecio mucho ya que me ayuda a mejor muchoo!

9
Aprender a programar desde cero / No me carga el applet
« en: 29 de Abril 2015, 01:27 »
Soy nuevo en Java y el problema es que al intentar visualizar la clase del applet en un navegador me sale con el siguiente error:

  ClassNotFoundException


Páginas: [1]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".