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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Como validar un email para guardar en un archivo binario en: 29 Noviembre 2018, 03:10 am
Hola espero y puedan ayudarme, todo este tiempo e estado batallando con esto y no se exactamente como validar un correo electrónico y que los datos se queden guardados correctamente en mi archivo binario, me pasaron un código que se supone valida por completo el email pero realmente no estoy seguro y ese código es medio raro, espero y ustedes puedan asesorarme con el tema como quiera les dejo el código que me pasaron, espero y puedan ayudarme gracias.

Código
  1. void ValidarCorreo(char correo[MAX_PATH]) {
  2.  
  3. unsigned char Validar;
  4. static const char *Valida = ".com";
  5. if (strchr(correo, '@') != NULL) {
  6.  
  7. }
  8. }

sinceramente el código esta raro y pues lo curioso de todo es que sirve pero solo valida el .com y …. y ya.....
2  Programación / Programación C/C++ / Cargar archivo binario(No lee los caracteres de la cadena) en: 23 Noviembre 2018, 21:52 pm
"UTILIZO LENGUAJE VISUAL STUDIOS 2017 C++". Holo muy buenas, aquí traigo un código en el cual se basa en cargar los elementos agregados a un archivo binario y esta siendo trabajado en un proyecto de winapi,en este archivo se guardan todos los datos de una estructura llamada Contacto y EL ERROR ORCURRE cuando se empiezan a cargar los datos del contacto y me detiene justo en el punto donde marque en el código y me dice que no se pueden leer los caracteres de la cadena, otro dato que puedo ofrecerles sobre el error es que al parecer el programa me sigue introduciendo datos "basura", bueno realmente me deja como espacios vacíos en cada dato y los toma como si fueran algún otro elemento de mi lista aquí también dejare el código que uso para guardar los datos del contacto, espero y puedan ofrecerme su ayuda, gracias.

Código
  1. void GuardarContacto(HWND hDlg) {
  2.  
  3. aux = origen;
  4. ofstream Archivo;
  5.  
  6. Archivo.open(
  7. "C:\\Users\\artur\\OneDrive\\Documentos\\Visual Studio 2017\\Projects\\Proyecto Final Programacion 2\\Proyecto Final Programacion 2\\MisContactos.bin",
  8. ios::trunc | ios::out | ios::binary);
  9.  
  10. if (Archivo.is_open()) {
  11.  
  12. while (aux != NULL) {
  13. Archivo.write(reinterpret_cast<char *>(aux), sizeof(Contacto));
  14. aux = aux->sig;
  15. }
  16. Archivo.close();
  17. return;
  18. }
  19. else {
  20. MessageBox(hDlg, "No se pudo abrir el archivo", "ERROR", MB_ICONERROR | MB_OK);
  21. }
  22. return;
  23. }
  24.  
  25. void CargarContacto(HWND hDlg) {
  26.  
  27. aux = origen;
  28. ifstream Archivo;
  29.  
  30. Archivo.open(
  31. "C:\\Users\\artur\\OneDrive\\Documentos\\Visual Studio 2017\\Projects\\Proyecto Final Programacion 2\\Proyecto Final Programacion 2\\MisContactos.bin",
  32. ios::binary | ios::in);
  33.  
  34.  if (Archivo.is_open()) {
  35. while (!Archivo.eof()) {
  36. if (origen == NULL) {
  37. origen = new Contacto;
  38. Contacto *temp = new Contacto;
  39. Archivo.read(reinterpret_cast<char*>(temp), sizeof(Contacto));
  40. origen->Nombre = temp->Nombre;
  41. origen->Apellido = temp->Apellido;
  42. origen->Calle = temp->Calle;
  43. origen->EntreCalles = temp->EntreCalles;
  44. origen->Correo = temp->Correo;
  45. origen->Colonia = temp->Colonia;
  46. origen->Municipio = temp->Municipio;
  47. origen->Estado = temp->Estado;
  48. origen->Pais = temp->Pais;
  49. origen->NumTelefono = temp->NumTelefono;
  50. origen->NumCP = temp->NumCP;
  51. strcpy(origen->Foto1, temp->Foto1);
  52. strcpy(origen->Foto2, temp->Foto2);
  53. origen->ant = NULL;
  54. origen->sig = NULL;
  55. delete reinterpret_cast<char*>(temp);
  56. continue;
  57. }
  58. aux = origen;
  59. while (aux->sig != NULL)
  60. aux = aux->sig;
  61. aux->sig = new Contacto;
  62. Contacto *temp = new Contacto;
  63. Archivo.read(reinterpret_cast<char*>(temp), sizeof(Contacto));
  64. aux->sig->ant = aux;
  65. aux->sig->sig = NULL;
  66. aux = aux->sig;
  67. aux->Nombre = temp->Nombre;
  68. aux->Apellido = temp->Apellido;
  69. aux->Calle = temp->Calle;
  70. aux->EntreCalles = temp->EntreCalles;
  71. aux->Correo = temp->Correo;
  72. aux->Colonia = temp->Colonia;
  73. aux->Municipio = temp->Municipio;
  74. aux->Estado = temp->Estado;
  75. aux->Pais = temp->Pais;
  76. aux->NumTelefono = temp->NumTelefono;
  77. aux->NumCP = temp->NumCP;
  78. strcpy(aux->Foto1, temp->Foto1);
  79. strcpy(aux->Foto2, temp->Foto2);
  80. delete reinterpret_cast<char*>(temp);
  81. //Justo en delete reinterpret_cast<char*>(temp); ocurre el error por lo que les mencione antes.
  82. }
  83. Archivo.close();
  84. return;
  85. }
  86.    //MessageBox(hDlg, "No pueden cargarse los contactos", "ERROR", MB_ICONERROR | MB_OK);
  87. return;
  88. }
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines