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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


  Mostrar Temas
Páginas: 1 2 [3] 4 5 6 7 8 9
21  Programación / Java / Error Leyendo un archivo con varios objetos en: 11 Febrero 2016, 16:42 pm
Saludo para todos!!


les cuento he estado tratando de escribir una clase  pueda leer de una arhivo varios objetos y cuando encuentre el null salga de la func pero lo unico que me da es un par de exceptiones dejare el codigo abajo pienso que es la forma correcta asi pero si alguien me aconseja.

Código
  1. package Data;
  2.  
  3. import Data.InventarioData;
  4.  
  5. import java.io.FileInputStream;
  6. import java.io.IOException;
  7. import java.io.ObjectInputStream;
  8.  
  9. public class ReadData {
  10. ObjectInputStream inputFile;
  11.  
  12.  
  13. public ReadData(){}
  14.  
  15.  
  16. public Object ReadDataFile( String filename)
  17. {
  18. Object ret = null;
  19. try {
  20. inputFile = new ObjectInputStream(new FileInputStream(filename));
  21. ret = inputFile.readObject();
  22.    inputFile.close();
  23.  
  24. } catch (IOException e) {
  25.  
  26. e.printStackTrace();
  27. } catch (ClassNotFoundException e) {
  28. e.printStackTrace();
  29. }
  30.  
  31. return ret;
  32. }
  33.  
  34. public void ReadAllData(String filename)
  35. {
  36. InventarioData inv = null;
  37.  
  38. boolean reading = true;
  39. {
  40. try {
  41. inputFile = new ObjectInputStream(new FileInputStream(filename));
  42. } catch (IOException e) {
  43. // TODO Auto-generated catch block
  44. e.printStackTrace();
  45. }
  46. while( reading == true )
  47. {
  48.  
  49. try {
  50. if((inv = (InventarioData ) inputFile.readObject())!= null)
  51.  {
  52.      inv.PrintConsole();
  53.  }
  54. } catch (ClassNotFoundException e) {
  55. reading = false;
  56. e.printStackTrace();
  57. } catch (IOException e) {
  58. reading = false;
  59. e.printStackTrace();
  60. }
  61.  
  62. }
  63.  
  64. }
  65.  
  66.  
  67. }
  68.  
  69. }
  70.  


la exception es la siguiente :
Código
  1. at java.io.ObjectInputStream.readObject0(Unknown Source)
  2. at java.io.ObjectInputStream.readObject(Unknown Source)
  3. at Data.ReadData.ReadAllData(ReadData.java:50)
  4. at Main.Main.main(Main.java:23)

tambien me gustaria agregar que la clase inventario Implementa serializable de hecho si leo individualmente un objeto me devuleve bien , pero ahora me estoy preguntado si esta bien el metodo que uso para escrbir el objeto y que append al archivo

Código
  1. ObjectOutputStream fileOutput;
  2.  
  3. ...
  4.            //// no se si hay otra forma de hacerlo.
  5.            fileOutput = new ObjectOutputStream(new FileOutputStream(filename));
  6.    fileOutput.writeObject(object);
  7.  
  8.  

tambien me gustaria agregar que no estoy usando  la documentacion de oracle simplemente estoy usando algo que tome de una clase y por eso quizas me hace falta algo , soy nuevo en java vengo de c++ , cualquier consejo o critica es bien tomado y agradecido...!!! :D



gracias de antemano.
22  Programación / Programación C/C++ / intercambiar valores dentro de un vector en: 20 Enero 2016, 20:31 pm
Un saludo a todos !!

tengo una duda , yo quiero intercambiar valores dentro de un vector , pero cada vez que accedo a algun elemento usando un objeto temporal recibo un error , vi la funcion std::swap pero ella intercambia entre dos vectores y yo solo tengo uno estoy pensando probar con algun iterador pero me gustaria saber su opinion.

abajo dejo el codigo aunque es algo sencillo :D

Código
  1.  
  2. void SwapVectorValue(vector<Tile *>&ref,int index1, int index2)
  3. {
  4.   Tile *temp  = NULL;
  5.   temp->x     = ref[index1]->x;
  6.   temp->y     = ref[index1]->y;
  7.   temp->color = ref[index1]->color;
  8.   temp->index = ref[index1]->index;
  9.  
  10.   ref[index1]->x     = ref[index2]->x;
  11.   ref[index1]->y     = ref[index2]->y;
  12.   ref[index1]->color = ref[index2]->color;
  13.   ref[index1]->index = ref[index2]->index;
  14.  
  15.   ref[index2]->x         = temp->x;
  16.   ref[index2]->y         = temp->y;
  17.   ref[index2]->color     = temp->color;
  18.   ref[index2]->index     = temp->index;
  19.  
  20. }
  21.  
  22.  


gracias por su pronta respuesta...!!
23  Programación / Programación C/C++ / fltk en: 9 Diciembre 2015, 06:22 am
saludos  a todos !!


tengo una duda tengo un proyecto que usa fltk pero no se como hacer que se compile en windows usando mingw , he intentado usar fltk-config pero no lo reconoce me gustaria saber si existe otra forma estoy usando codeblocks o eclipse para ese proyeto.
24  Programación / Java / Class ArrayIndexOutOfBoundsException : error [codigo] en: 13 Noviembre 2015, 15:45 pm
Saludos a todos.

tengo una duda tengo en mi codigo un arreglo que me da el error del titulo pero el arreglo que tengo es de 5  * 5 entonces no se por que me da error que dice que estoy accediendo  a un indice que esta fuera de rango por favor si alguien me puede aconsejar seria un exito.. dejo el codigo.

Código
  1.  
  2.  
  3.  
  4. TileMap(String s,int size)
  5. {
  6. tilesize = size;
  7. try
  8. {
  9.  
  10. mapwidth = Integer.parseInt(br.readLine());
  11. mapheight = Integer.parseInt(br.readLine());
  12. System.out.printf("width [%d], height[%d]",mapwidth , mapheight);
  13.  
  14. map = new int[mapheight][mapwidth];
  15. System.out.printf("Lenght [%d}",map.length);
  16.  
  17.  
  18.  
  19. String del = " ";
  20.  
  21. for(int row = 0;row < map.length ;row++ )
  22. {
  23. String line = br.readLine();
  24. String[] tokens = line.split(del);
  25. System.out.printf("Tokens [%s]\n", tokens);
  26.  
  27.  
  28.  
  29.  
  30.  
  31.                              ///for(int col = 0; col < mapheight; col++)
  32.                               for(int col = 0; col < map[row].length; col++)
  33. {
  34. System.out.printf("[%d],",Integer.parseInt(tokens[col]));
  35.  
  36.                                            ///eclipse me redirecciona aqui.
  37.                                          map[row][col] = Integer.parseInt(tokens[col]);
  38. }
  39. System.out.printf("\n");
  40.  
  41. }
  42. br.close();
  43. }catch(Exception e)
  44. {
  45. e.printStackTrace();
  46. }
  47.  
  48. }
  49.  
  50. public void update()
  51. {
  52.  
  53. }
  54.  
  55. public void draw(Graphics2D g)
  56. {
  57. for(int row = 0; row < map.length; row++)
  58. {
  59. for(int col= 0; col < map[row].length; col++)
  60. {
  61. int rc = map[row][col];
  62. if(rc == 0)
  63. {
  64. g.setColor(Color.BLACK);
  65. }
  66. if(rc == 1)
  67. {
  68. g.setColor(Color.RED);
  69. }
  70. g.fillRect(x+col *tilesize, y + row * tilesize, tilesize, tilesize);
  71. }
  72. }
  73.  
  74.  
  75. }
  76.  
  77.  
  78.  
  79.  
  80. }
  81.  
  82.  
  83.  


Gracias por los consejos.
25  Programación / Programación C/C++ / error en bucle[codigo fuente] en: 4 Noviembre 2015, 16:34 pm
Buenas a todos !!
he estado programando un aplicacion mobil usando sdl y cuando cargo para probar
me da errores  la verdad tengo un buen tiempo y no doy con lo que me causa problema.

mas abajo dejo el codigo , aunque estoy pensando que es por un bucle que tengo pero no estoy seguro
Código
  1.  
  2.  
  3.  
  4. #include<SDL.h>
  5.  
  6. #include<cstdlib>
  7. #include<ctime>
  8.  
  9. using namespace std;
  10.  
  11.  
  12. void CopiarPantalla(SDL_Renderer *renderer, SDL_Rect start_pos[256],SDL_Texture *img)
  13. {
  14.   for(unsigned int Drawers = 0; Drawers <255; Drawers++)
  15.   {
  16.   SDL_RenderCopy(renderer, img,NULL,&start_pos[Drawers]);
  17.   }
  18.  
  19.  
  20. }
  21.  
  22.  
  23. int main(int argc, char *argv[])
  24. {
  25.  
  26. SDL_Rect player = {10,12,32,32};
  27.  
  28.  
  29. SDL_Window     *window    =  NULL;
  30. SDL_Renderer   *renderer  =  NULL;
  31. int width     =  0 ;
  32. int height  =  0 ;
  33.    bool Run  =  true;
  34.    SDL_Surface    *unloaded  =  NULL;
  35. SDL_Surface    *opt_img  =  NULL;
  36. SDL_Texture    *img  =  NULL;
  37.    SDL_Event    event;
  38. SDL_DisplayMode mode;
  39. unsigned int start = 0;
  40. SDL_Rect start_pos[256];
  41. SDL_Color color_pantalla = {0,0x12,0xa,0xff};
  42. SDL_Rect fillRect;
  43.  
  44. if(SDL_Init(SDL_INIT_EVERYTHING) < 0 )
  45. {
  46. SDL_Log("Imposible Cargar SDL_INIT [%s]", SDL_GetError());
  47.    Run    = false;
  48. }
  49. srand(time(NULL));
  50. for(unsigned int initializer = 0; initializer <255; initializer++)
  51. {
  52. start_pos[initializer].x = 10 + rand() % width;
  53.        start_pos[initializer].y = 10 + rand() % height;
  54.        start_pos[initializer].w = 32;
  55.    start_pos[initializer].h = 32;
  56. }
  57.  
  58. unloaded = SDL_LoadBMP("color.bmp");
  59. if(unloaded == NULL)
  60. {
  61. SDL_Log("No se cargo el graficio");
  62.    Run = false;
  63. }
  64. else
  65. {
  66.  
  67. opt_img =  SDL_ConvertSurfaceFormat( unloaded, SDL_PIXELFORMAT_RGBA8888, NULL );
  68. if(opt_img == NULL)
  69. {
  70. SDL_Log("Imposible optimizar");
  71. Run = false;
  72. }
  73. }
  74.  
  75.  
  76. if(Run == true)
  77. {
  78.  
  79.  
  80.  
  81.  
  82. //obtner el tamano de los valores de la pantalla.
  83. if( SDL_GetCurrentDisplayMode( 0, &mode ) == 0 )
  84.      {
  85. width   = mode.w;
  86. height  = mode.h;
  87. fillRect.w = width;
  88. fillRect.h = height;
  89. player.x = width /2;
  90. player.y = height/2;
  91.  }
  92.  
  93.  
  94. //crear la ventana SDL
  95. window = SDL_CreateWindow("Neo.App",SDL_WINDOWPOS_UNDEFINED,SDL_WINDOWPOS_UNDEFINED,width, height, SDL_WINDOW_SHOWN);
  96.     if(window == NULL)
  97. {
  98. SDL_Log("Imposible crear la ventana ,[%s]", SDL_GetError());
  99.     Run = false;
  100. }
  101. else
  102. {
  103. Run = true;
  104.     }
  105.     if(Run == true)
  106. {
  107. renderer = SDL_CreateRenderer(window , -1 ,  SDL_RENDERER_ACCELERATED | SDL_RENDERER_PRESENTVSYNC);
  108. if(renderer == NULL)
  109. {
  110. Run = false;
  111. }
  112. }
  113. ///Creamo la textura aqui.
  114. SDL_SetColorKey(opt_img, SDL_TRUE, SDL_MapRGB(opt_img->format, 0,0,0));
  115.  
  116.  
  117. img = SDL_CreateTextureFromSurface( renderer, opt_img);
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133. ///bucle principal.
  134. while(Run)
  135. {
  136. start = SDL_GetTicks();
  137. ///pollEvent's
  138. while(SDL_PollEvent(&event))
  139. {
  140. if(event.type == SDL_QUIT)
  141. {
  142. Run = false;
  143. #ifdef _DEBUG_ENABLE
  144.  SDL_Log("se acabo");
  145. #endif
  146. }
  147. if(event.type == SDL_KEYDOWN ||  event.type == SDL_FINGERDOWN)
  148.             {
  149. if(event.type == SDL_FINGERDOWN)
  150. {
  151. color_pantalla.g +=32 ;
  152. if(color_pantalla.g == 256)
  153. {
  154.             color_pantalla.g = 0;
  155.        color_pantalla.r += 32;
  156. color_pantalla.b += 64;
  157. if(color_pantalla.r == 256)
  158. color_pantalla.r = 0;
  159. if(color_pantalla.b == 256)
  160. color_pantalla.b = 0;
  161. }
  162. }
  163.  
  164.  
  165.  
  166. }
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174. }//end event;
  175.  
  176.  
  177. //update
  178.    for(unsigned int initializer = 0; initializer <255; initializer++)
  179. {
  180. start_pos[initializer].x = 10 + rand() % width;
  181.        start_pos[initializer].y = 10 + rand() % height;
  182.        start_pos[initializer].w = 32;
  183.    start_pos[initializer].h = 32;
  184. }
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195. //Draw
  196.  SDL_RenderClear(renderer);
  197.  SDL_SetRenderDrawColor( renderer, color_pantalla.r, color_pantalla.g, color_pantalla.b, color_pantalla.a);        
  198.          SDL_RenderFillRect( renderer, &fillRect );
  199.      CopiarPantalla(renderer,start_pos,img);
  200.  
  201.  SDL_RenderCopy(renderer, img,NULL,&player);
  202.  
  203. SDL_RenderPresent(renderer);
  204.  
  205. //FPS
  206. }
  207.  
  208.  
  209.  
  210.  
  211. }
  212.  
  213. return 0;
  214. }
  215.  



pienso que el error puede estar la funcion copiar.. pero no estoy seguro. por cierto en Desktop cuando la corro la aplicacion cierra desde que entra al primer for , pero en mobil es diferente y es confuso.

gracias
26  Programación / Programación C/C++ / Leer caracteres de la tabla ascii dentro de un std::string [PERGUNTA] en: 20 Julio 2015, 22:34 pm
Buenaas !! Saludo !!!


tengo una pequena duda estoy leyendo algo sobre caracteres de la tabla ascii estoy usando un cast a char pero cuando ingreso el retorno de linea (13) por ejemplo nop pasa nada por lo menos cuando comparo directamente con caracteres quizas lo estoy haciendo mal , por que tengo una funcion que si me da los espacios que quiero por ejemplo dejare los codigos de ambos para que vean que trato de decir .... gracias

 ... solo me gustaria un consejo que deberia de hacer por favor no quiero el codigo me he dado cuenta que quizas a veces pregunto por algo y me dan el codigo y la verdad me gustaria solo un consejo gracias !!!!  :laugh: :laugh: :laugh: 
y disculpen las molestias !!!!!!

Código
  1. void Editor()
  2. {
  3.  
  4. string filename;
  5. cout <<"por favor ingrese el  del fichero que va a editar"<<endl;
  6.    ///analizar texto/
  7. getline(cin , filename, '$');
  8. for(string::iterator it =filename.begin(); it != filename.end(); it++)
  9. {
  10. if(*it == (char)13 || *it == (char)3)
  11. cout <<"Salto de linea \n "<<endl;
  12. else
  13. cout << '\n' << *it <<endl;  ///aqui me imprime todo los caracteres
  14.                                                                 ///incluyendo los espacios y los enter
  15.                                                                 ////solo es parte del codigo de la
  16.                                                               //// asi que el nomnre lo pueden ignorar.....
  17. }
  18. }


en este por ejemplo el espacio si sale como deseo pero en el codigo de arrba no pasa nda d
Código
  1. void PrintSpace(unsgined int cnt)
  2. {
  3.    for(auto e(0) : cnt )
  4.       cout <<( char ) 32;
  5. }


Gracias por los consejos !!
27  Programación / Programación General / capturar comandos en la consola de eclipse en: 17 Julio 2015, 21:08 pm
Buenas a tod@s aqui !!
tengo una duda estoy usando eclipse para un proyecto y tengo configurado un .bat y tengo dos inconvientes uno es que cuando le doy a build me muestra el path y no corre el comando y de ser posible como se configura para que capture la salda ,gracia !!!
28  Programación / Programación C/C++ / creando un registro en: 9 Julio 2015, 05:50 am
Saludos a todos tengo un pequeno incoviente con el siguiente codigo cuando lo uso mi aplicacion se cae , creo que estoy manejando mal los archivos bueno dejo el codigo a ver si me aconsejn



Código
  1. #include...
  2. ////librerias esas estanbien incluida
  3.  
  4. ///usare una funcion getTransaccionActual()
  5. void CopiarFichero(){
  6.  
  7.  int inFhandle;
  8.  int outFhandle;
  9.  int cnt;
  10.  int bytesLeidos;
  11.  int bytesEscrito;
  12. TRAN_STRUCT stTran;
  13.  
  14.   inFhandle    = open("lect.dat", O_RDONLY);
  15.   outFhandle  = open("lect.dat", O_WRONLY | O_CREAT);
  16.  
  17.  
  18.   if(inFhandle < 0 || outFhandle < 0)
  19.   {
  20.        LOG("Error abriendo el fichero");
  21.       /// si pudiera salir  o hacer Ret ,aunque no hay salida en log
  22.   }
  23.  else
  24.  {
  25.    do{
  26.          bytesLeidos = read(inFhandle , (char *)&srTran, sizeof(srTran));
  27.  
  28.           if(bytesLeidos == sizeof(srTran))
  29.           {
  30.  
  31.         if(strcmp(srTran.code, "mivalor") != 0)
  32.           {
  33.              bytesEscritos = write(outFhandle , (char *)&srTran, sizeof(srTran));
  34.            }
  35.           else
  36.           {
  37.                  ////simplemente ignoro
  38.           }
  39.  
  40.      }else
  41.          {
  42.                /////mas codigo para mostrar el error
  43.         }
  44.    }while(bytesLeidos == sizeof(srTran));
  45.    close(inFhandle);
  46.    close(outFhandle);'  
  47. }
  48.  
  49.  
  50. ////mas codgio
  51.  
  52.  
  53.  
  54. }
  55.  
  56.  
  57.  



bueno es parte de lo que tengo hecho se utiliza y me pregunto que podria estar haciendo mal ?
me como alguna variable , el dispositvo al que se la pongo truena... no se que hacer ya.


GRACIAS !!
29  Programación / Programación C/C++ / typedef struct vs struct en: 7 Julio 2015, 19:47 pm
Buenas a todos me pregunto si alguien me podria decir por favor la diferencia entre

typedef struct y struct . que diferencias en codigo , se que typedef se usa para declarar tipos .
30  Programación / Programación C/C++ / append , . a un string existente en: 5 Junio 2015, 17:56 pm
Buenas a todos en mi afan de aprender me he topado con lo siguiente
tengo cantidades monetarias en string y quiero agregarles en su debido lugar un caracter espeficio como son comas y puntos pero no me explota el programa cuando lo corro
pior que seria eso ?

abajo dejo parte del codigo ,gracias por los consejos.
Código
  1. char *addComma(char *szValue){
  2.   char *szReturn =  NULL;
  3.   char *szTemp1  =  NULL;
  4.   char *szTemp2  =  NULL;
  5.    int inLength = strlen(szValue);
  6.  
  7.   /*
  8.     *  10000.00 -->> 10,000.00
  9.     *  9000.00  -->>  9,000.00
  10.     *
  11.     *
  12.     *
  13.     * */
  14.  
  15.  
  16.  
  17.   if(inLength >= 6 ){
  18. switch(inLength){
  19. case 7:
  20. strncpy(szTemp1,szValue, 2 );
  21. strncat(szTemp1, ",", 1);
  22. strncat(szTemp1, szValue+3,3);
  23. strncpy(szTemp1, ".", 1);
  24.  
  25. break;
  26. case 5:
  27.  
  28. }  
  29.   }
  30.  
  31.   return szTemp1;
  32. }


solo importa la parte que hago strncat , strncpy
Páginas: 1 2 [3] 4 5 6 7 8 9
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines