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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Temas
Páginas: [1]
1  Programación / Java / Insertar elementos a una tabla en: 20 Mayo 2014, 00:22 am
Buenas, soy principiante en Java aunque tengo conocimientos en C, pero me estoy comiendo mucho la cabeza en una cosa que debería de ser simple...

Si tengo un constructor que me hace tal que así:

Código:
   private RegistroDeTraduccionInterfaz [] tabla = null;
    .........
    .........
    .........

 public Nat( String direccionExterna ) throws OperacionNoPermitidaExcepcion
    {
tabla = new RegistroDeTraduccionInterfaz[ 10000 ]
        .........
        .........
        .........
    }

Por qué luego me salta NullPointerException al intentar insertar elementos a la tabla?

Código:
 public void insertarEntradaEnTabla ( RegistroDeTraduccionInterfaz entrada ) throws OperacionNoPermitidaExcepcion
{
this.tabla[0] = entrada;
}

He probado tanto eso como esto:
Código:
this.tabla[0] = new RegistroDeTraduccion(istPrivado,istPublico);	

Pero en ambos casos me salta esa excepción y no entiendo que estoy haciendo mal...

PD:
Si pongo un try/catch con NullPointerException consigo que al menos siga la ejecución, pero quiero solucionarlo y que no llegue a saltar, ya que con esto la tabla acaba vacía igualmente.
2  Programación / Programación C/C++ / Manejar ficheros en: 18 Abril 2014, 03:25 am
Hola, estoy haciendo un programa en C que trabaja con ficheros de entrada y salida pero no se acceder a lo que necesito. Dentro del fichero de entrada hay varias líneas con 3 campos: nombre, tipo y dirección.
Por ejemplo:
Código:
www.google.es A 130.206.193.53
www.youtube.com A 211.132.198.42

Bien, yo para manejarlo mejor, cojo la primera linea y la paso a una cadena de caracteres con fgets. Una vez tengo la cadena compruebo que el tipo es correcto (sólo puede haber dos tipos, o A o B) con strchr.

El problema viene con la dirección, pues tengo que comprobar que no se salga del rango 0-255, que no aparezca un 5º número (130.210.222.32.1), etc... Resumiendo, que tenga el formato de una dirección IP.
No se muy bien como mirar eso, lo que se me va ocurriendo acaba en un código enorme y dudo que sea así.

A ver si alguien puede echarme una mano. Todo esto es para comprobar que no hay errores y después crear una lista con nodos de tres cadenas de caracteres una para cada campo.

EDITO:
Acabo de ver que con fscanf puedo separar los campos, por ejemplo:
Código:
char cadena[100];
char cadena2[100];
int valor;
...
fscanf (f, "%[a-z0-9]:%d:%[a-z0-9]\n", cadena, &valor, cadena2);

Pero claro, mi fichero de entrada va separado con espacios y si pongo más espacios o tabulaciones también tendría que funcionar:
Código:
www.google.es                   A  130.206.193.53
www.youtube.com    A         211.132.198.42

Además de que seguiría desconociendo el tema de saber si el formato de la IP es correcto.



Perdón por el doble post, es por no borrar todo lo anterior ni llenarlo de EDITO.

Creo que si alguien me explica como meter cada campo en una cadena de caracteres sabría seguir, vamos, que si tengo "www.google.es A 130.206.193.53" como meto www.google.es en una cadena, A en otra y 130.206.193.53 en otra.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines