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] 2 3 4 5 6 7 8 9 10
1  Sistemas Operativos / GNU/Linux / Dificultad al intentar realizar partición para instalar 2 sistemas operativos. en: 14 Diciembre 2017, 23:03 pm
Hola, buen día.
Les comento lo que me pasa, mi único sistema operativo es Ubuntu 17.10 y tengo la necesidad de instalar windows 7 y como dice el enunciado no puedo realizar una partición para instalar el SO, instale un programa(no recuerdo el nombre) que todos recomiendan en internet(no foros) pero no lo puedo arrancar ni desde el lanzador ni desde la consola, le aclaro que es la primera vez que instalo windows, con esto dejo aclarado que soy un novato en el tema.-

Saludos.
Daniel
2  Programación / Scripting / Mostrar frases alineadas extraídas de un archivo [Python] en: 27 Noviembre 2017, 16:50 pm
Hola, muy buen día.-
Los molesto por 2 cosas.
La primera es para que me digan como puedo mostrar las traducciones alineadas:

Incorrecto
Citar
Home   Hogar
Almost   Casi
Also   También

Citar
Correcto
Home       Hogar
Almost     Casi
Also         También

Y la segunda para que alguien con mucho pero mucho tiempo me de algún consejo
para mejorar el código(recién me estoy iniciando).-

Las funciones a tener en cuenta son guardar y listado

Código
  1. # -*- coding: utf-8 -*-
  2. import os
  3.  
  4. # Traductor Inglés/Español
  5.  
  6. def menu():
  7. borrar_pantalla()
  8. listado()
  9. while True:
  10. registros=cantidad_registros()
  11. print("\n ========== Traductor Inglés/Español ==========")
  12. print("\n Cantidad de traducciones guardadas...:{} ".format(registros))
  13. print("\n\n --------------- Menú principal ---------------")
  14. print(" \n\t 1) Ingresar. \n\t 2) Consultar(visualizar/borrar)."
  15. "\n\t 3) Finalizar.")
  16.  
  17. opcion = input("\n\t Elija opción..............: ")
  18. if opcion < '1' or opcion > '3':
  19. print("\n Por favor, elija una opción válida ")
  20. input("\n Pulse [Enter] para continuar...")
  21. borrar_pantalla()
  22. elif len(opcion) > 1:
  23. print("\n Por favor, elija una opción válida ")
  24. input("\n Pulse [Enter] para continuar...")
  25. borrar_pantalla()
  26. else:
  27. if opcion == '1':
  28. ingreso()
  29. elif  opcion == '2':
  30. registros=cantidad_registros()
  31. if registros > 0:
  32. consulta()
  33. else:
  34. print("\n No hay traducciones guardadas para buscar")
  35. input("\n Pulse [Enter] para continuar...")
  36. borrar_pantalla()
  37. if opcion == '3':
  38. break
  39.  
  40. def listado():
  41. print("\n ========== Listado de traducciones guardadas. ==========")
  42. with open('traductor.txt', 'r') as tra:
  43. for linea in tra:
  44. print(" ", linea)
  45.  
  46. def ingreso():
  47. borrar_pantalla()
  48. while True:
  49. ingles = input("\n Ingrese palabra en Inglés.......: ")
  50. while len(ingles) == 0:
  51. ingles = input("\n Ingrese palabra en Inglés.......: ")
  52.  
  53. espaniol = input("\n Ingrese traducción al Español...: ")
  54. while len(espaniol) == 0:
  55. espaniol = input("\n Ingrese traducción al Español...: ")
  56. arch = input('\n Ingrese "Si" para guardar traducción en disco'
  57. '\n otra para descartar.............:')
  58. if arch == 'Si':
  59. trad = ingles + "   " + espaniol +"\n"
  60. guardar(trad)
  61. else:
  62. print("\n La traducción no fue guardada...")
  63.  
  64. seg_salir = input('\n Ingrese "Si" para otra traducción\n'
  65.  ' Otra para ir al menú..........:')
  66. if seg_salir == 'Si':
  67. borrar_pantalla()
  68. else:
  69. menu()
  70. break
  71.  
  72. def guardar(trad):
  73. f=open("traductor.txt", "a")
  74. f.write(trad)
  75. f.close()
  76.  
  77.  
  78. def consulta():
  79. borrar_pantalla()
  80. encontrado=""
  81. busqueda = input("\n Ingrese consulta (en inglés o español...:) ")
  82. with open('traductor.txt', 'r') as tra:
  83. for linea in tra:
  84. if busqueda in linea:
  85. encontrado=linea
  86.  
  87. if len(encontrado) > 0:
  88. print("\n Resultado...: {0}".format(encontrado))
  89. print("\n ¿Desea borrar la traducción en pantalla?\n ")
  90. opcion = input(" 'Si' para borrar / otra para descartar...: ")
  91. if opcion == 'Si':
  92. borrar_traduccion(encontrado)
  93. else:
  94. print("\n La traducción no existe...")
  95. input("\n Pulse [Enter] para continuar...")
  96.  
  97. def cantidad_registros():
  98. f = open("traductor.txt","r")
  99. f.readline()
  100. f.seek(0)
  101. cant_registros = len(f.readlines())
  102. f.close()
  103.  
  104. return cant_registros
  105.  
  106.  
  107. def borrar_traduccion(encontrado):
  108. f = open("traductor.txt","r")
  109. lineas = f.readlines()
  110. f.close()
  111.  
  112. f = open("traductor.txt","w")
  113. for linea in lineas:
  114. if linea!=encontrado:
  115. f.write(linea)
  116.  
  117. f.close()
  118.  
  119.  
  120.  
  121. def borrar_pantalla():
  122. if os.name == "posix":
  123. os.system ("clear")
  124. elif os.name == ("ce", "nt", "dos"):
  125. os.system ("cls")
  126.  
  127. def main():
  128. menu()
  129.  
  130. main()
   
Saludos y gracias.
Daniel

3  Programación / Scripting / Archivos en Python, Salto de línea y búsqueda. en: 22 Noviembre 2017, 23:57 pm
Hola gente, buen día. Estoy estudiando archivo y me encuentro con 2 dudas(por el momento):
La primera es que no logro que me copie el salto de línea, yo creí que al finalizar la frase con [Enter] bastaba pero parece que en el archivo no se ve reflejado.-
Y lo segundo es si estoy rumbeado con las líneas para buscar una palabra en el archivo.-

Código
  1. a=0
  2. f=open("archivo.txt", "a")
  3. for a in range(5):
  4. b = input("\n Ingrese frase...:")
  5. f.write(b)
  6. a+=1
  7. f.close()

Código
  1. palabra = 'Arequito'
  2. ocurrencias = []
  3. with open('archivo.txt') as lineas:
  4.    for linea in lineas:
  5.        if palabra in linea:
  6.            ocurrencias.append(linea)
  7.  
  8. print ocurrencias

Saludos.
Daniel
4  Programación / Scripting / Entender la lógica de un bucle while en python.- en: 19 Noviembre 2017, 16:25 pm
Hola gente, ¿como están?
El programa funciona, pero hay algo que salio de "casualidad" y lo que quiero es encontrarle la lógica.-
Lo que no entiendo es porque  funciona el bucle while.-

Código
  1. while((re.findall(expr, cadena))):

Código
  1. # -*- coding: utf-8 -*-
  2. import os
  3. import re
  4.  
  5. def input_abc():
  6. expr = r'[0-9]'
  7. cadena = input('\n Ingrece una cadena (no se permiten números)...: ')
  8. while((re.findall(expr, cadena))):
  9. borrar()
  10. cadena = input('\n Ingrece una cadena (no se permiten números)...: ')
  11.  
  12. return cadena
  13.  
  14. def borrar():
  15. print('\n\tError. No se permiten números...')
  16. input("\n Pulse una tecla para continuar...")
  17. if os.name == "posix":
  18. os.system ("clear")
  19. elif os.name == ("ce", "nt", "dos"):
  20. os.system ("cls")
  21.  
  22. def main():
  23. print("\n Cadena introducida: ", input_abc())
  24.  
  25. main()

Saludos.
Daniel
5  Programación / Scripting / Validar ingreso de datos con Python en: 16 Octubre 2017, 19:14 pm
Hola amigos, ¿como están?.
Tengo una duda con el código que dejo a continuación, con estos videos estoy aprendiendo a programar en python:https://www.youtube.com/watch?v=2MaAs7XU2T0 y he llegado a las excepciones, la consulta es como resulta más conveniente validar los datos ingresado por teclado, utilizando try/except o con if, para validar un dato float no se debe permitir el ingreso de otra cosa que no sean números del 0 al 9 y que las variables op1 y op2 no pueden valer cero, creo que es todo -
Otra cosita, me podrían dar alguna idea para mejorar el código. -

Código
  1. import os
  2.  
  3. def sum(num1, num2):
  4. return num1+num2
  5.  
  6. def res(num1, num2):
  7. return num1-num2
  8.  
  9. def div(num1, num2):
  10. return num1/num2
  11.  
  12. def mul(num1, num2):
  13. return num1*num2
  14.  
  15. while True:
  16. op1=(float(input("\n Introduce el primer número...: ")))
  17. op2=(float(input("\n Introduce el segundo numero..: ")))
  18.  
  19. print("\n ====================================")
  20. print("\n 1 - Suma\n 2 - Resta\n 3 - División\n 4 - Multiplicación\n ")
  21. operacion=(int(input("\n Introduce opción..: ")))
  22.  
  23. if operacion == 1:
  24. print("\n " + str(op1) + " + " + str(op2) + " = ",  sum(op1,op2))
  25. if operacion == 2:
  26. print("\n " + str(op1) + " - " + str(op2) + " = ",  res(op1,op2))
  27. if operacion == 3:
  28. print("\n " + str(op1) + " / " + str(op2) + " = ",  div(op1,op2))
  29. if operacion == 4:
  30. print("\n " + str(op1) + " x " + str(op2) + " = ",  mul(op1,op2))
  31.  
  32. print("\n ====================================")
  33. print("\n 1 - Otra operación\n 2 - Finalizar\n ")
  34. salSeg=(int(input("\n Introduce opción..: ")))
  35.  
  36. if salSeg == 1:
  37. os.system('clear')
  38. else:
  39. break


Desde ya muchas gracias.-
Un abrazo. Daniel
6  Programación / Scripting / Dudas con variable entera y bucles en python. en: 8 Octubre 2017, 18:28 pm
Hola a todos, que tengan un muy buen día. -
Hace 3 días que estoy leyendo el libro "Aprenda a pensar como un programador" y quería
hacer el siguiente programita a partir del número 1234 mostrar por pantalla por separado
los 4 números, pero no me sale, es obvio que debería utilizar un bucle pero todavía no se
como es la sintaxis. -
Les dejo lo que llevo hecho para ver si me pueden orientar.-

Código
  1. a = 1234
  2. b = 10
  3. c = a % b
  4. print(c)

Lo que ocurre es que cuando divido 1234/10 me sale con decimales y necesito que el resultado
sea 1234-123-12-1
Saludos y un abrazo.-
Daniel
7  Programación / Programación C/C++ / Algoritmo para Obtener el día de la semana[C] en: 25 Mayo 2017, 23:03 pm
Hola, muy buen día. -
El programa que dejo a continuación logra perfectamente lo que necesito, pero quiero meter todo esto en una función para obtener el día de la semana, nada más que eso y me parecen muchas líneas para lograr tan solo una, alguien tiene algo con menos líneas y que haga lo mismo? .-

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. char *dias [] = {" ", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo"} ;
  6.  
  7. int main ( int argc, char *argv[ ] ){
  8. struct tm fecha;
  9. int anyo, mes, dia;
  10.  
  11. printf (" \n año.....: ");
  12. scanf ("%d", &anyo) ;
  13.  
  14. printf( " Mes......: ");
  15. scanf ("%d", &mes);
  16.  
  17. printf ( " Dia......: ");
  18. scanf ("%d", &dia) ;
  19.  
  20. fecha.tm_year = anyo - 1900;
  21. fecha.tm_mon = mes - 1;
  22. fecha.tm_mday = dia;
  23. fecha.tm_hour = 0;
  24. fecha.tm_min = 0;
  25. fecha.tm_sec = 1;
  26. fecha.tm_isdst = -1;
  27.  
  28. if (mktime (&fecha) == -1){
  29. puts ( " Error en la fecha. " ) ;
  30. exit(-1);
  31. }
  32.  
  33. if (fecha.tm_wday == 0)
  34. fecha.tm_wday = 7;
  35.  
  36. printf("\n El %d/%d/%d es %s" , dia, mes, anyo, dias[fecha.tm_wday]);
  37.  
  38. return EXIT_SUCCESS;
  39. }

Desde ya muchas gracias.
Saludos.
8  Programación / Programación C/C++ / Convertir int dia, mes, año a char en C. en: 22 Mayo 2017, 23:10 pm
Hola, gente. -
Me encuentro haciendo un recordatorio y estoy en la parte de la fecha, el caso es que para validar que la fecha sea correcta tengo 3 variables enteras con el día el mes y el año pero necesito pasar todo a una variable char con las barritas y todo, estuve practicando con fprintf pero no lo logro, si alguien tiene un Ej. se lo agradecería. -

Saludos.
9  Programación / Programación C/C++ / Agregar datos a mensajes de error en archivos con lenguaje C. en: 6 Mayo 2017, 17:52 pm
Hola, que tengan un muy buen día.
Lo que no puedo encontrar es información de porque ocurren los errores en archivos, quisiera informar al operario que pasó si por Ej. no se pudo abrir un archivo, o si no se pudo crear el archivo .bak, desconozco si esto es privativo del sistema operativo o si tiene que ver con el lenguaje. -
También me interesaría completar el mensaje con que hacer para que esto no ocurra nuevamente. -
Deje el programa(sin terminar) por si les ayuda en algo para entender mi pedido. -

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. #define MAX 80
  6.  
  7. void ingresarFrase( char frase[] );
  8. void copiar( char frase[] );
  9. void mostrar( void );
  10. void errorEscritura( void );
  11. void copiaDeSeguridad( const char *GtTxt, const char *GtBak );
  12. void mensaje( int par );
  13.  
  14. int main( void ){
  15. char frase[MAX];
  16.  
  17. ingresarFrase( frase );
  18. copiar( frase );
  19. mostrar(  );
  20. copiaDeSeguridad( "archGuiaTel.txt","archGuiaTel.bak" );
  21.  
  22.  
  23. return EXIT_SUCCESS;
  24. }
  25.  
  26. void ingresarFrase( char frase[] ){
  27. int ok=0;
  28.  
  29. do{
  30. printf( "\n Ingrese frase.....:" );
  31. fgets( frase, MAX, stdin );
  32. ok = strlen( frase );
  33. }while( ok <= 1 );
  34. }
  35.  
  36. void copiar( char frase[] ){
  37. FILE *ptrGtTxt;
  38. int par;
  39.  
  40. if( !(ptrGtTxt = fopen( "archGuiaTel.txt", "a+" ))){
  41. par = 1;
  42. mensaje( par );
  43. exit(1);
  44.    }
  45.  
  46. fprintf( ptrGtTxt, "%s", frase );
  47.  
  48. if( fflush( ptrGtTxt ) != 0){
  49. par = 2;
  50. mensaje( par );
  51. errorEscritura( );
  52. exit(1);
  53. }
  54.  
  55. if( ( fclose( ptrGtTxt ) ) ){
  56. par = 3;
  57. mensaje( par );
  58. exit(1);
  59. }
  60. }
  61.  
  62. void mostrar( void ){
  63. FILE *ptrGtTxt;
  64. char texto[100];
  65. int par;
  66.  
  67. if( !(ptrGtTxt = fopen( "archGuiaTel.txt", "r" ))){
  68. par = 4;
  69. mensaje( par );
  70. exit(1);
  71.    }
  72.  
  73. printf( "\n ========== Contenido del archivo ==========\n" );
  74. fgets( texto, 100, ptrGtTxt);
  75. while( feof(ptrGtTxt) == 0 ){
  76. printf( "%s",texto );
  77. fgets(texto, 100, ptrGtTxt);
  78. }
  79.  
  80. if( ( fclose( ptrGtTxt ) ) ){
  81. par = 5;
  82. mensaje( par );
  83. exit(1);
  84. }
  85. }
  86.  
  87. void errorEscritura( void ){
  88. int par;
  89.  
  90. if(remove( "archGuiaTel.txt" ) !=0 ){
  91. par = 6;
  92. mensaje( par );
  93. exit(1);
  94. }
  95.  
  96. if( rename( "archGuiaTel.bak","archGuiaTel.txt") !=0 ){
  97. par = 7;
  98. mensaje( par );
  99. exit(1);
  100. }
  101. }
  102.  
  103. void copiaDeSeguridad( const char *GtTxt, const char *GtBak ){
  104. FILE *ptrGtTxt, *ptrGtBak;  
  105. char c, x;
  106. int par;
  107.  
  108. if( !( ptrGtTxt = fopen( GtTxt, "r" ))){
  109. par = 8;
  110. mensaje( par );
  111. exit(1);                                
  112. }
  113. if( !( ptrGtBak = fopen( GtBak, "w" ))){
  114. par = 9;
  115. mensaje( par );
  116. exit(1);                                
  117. }
  118.  
  119. c = fgetc( ptrGtTxt );
  120. while ( c != EOF ){
  121. x = fputc( c, ptrGtBak );
  122. if (x != c){
  123. par = 10;
  124. mensaje( par );
  125. exit(1);                                
  126. }
  127. c = fgetc( ptrGtTxt );
  128. }
  129.  
  130. if( ( fclose( ptrGtTxt ) ) ){
  131. par = 11;
  132. mensaje( par );
  133. exit(1);                                
  134. }
  135. if( ( fclose( ptrGtBak ) ) ){
  136. par = 12;
  137. mensaje( par );
  138. exit(1);                                
  139. }
  140. }
  141.  
  142. void mensaje( int par ){
  143. int ch, a;
  144.  
  145. if( par == 1 ){
  146. printf( "\n No se pudo ABRIR el archivo, la frase no se pudo copiar" );
  147. printf( "\n El programa se cerrara sin cambios..." );
  148. }
  149. if( par == 2 ){
  150. printf( "\n No se pudo ESCRIBIR en el archivo..." );
  151. }
  152. if( par == 3 ){
  153. printf( "\n ===> No se pudo CERRAR el archivo..." );
  154. }
  155. if( par == 4 ){
  156. printf( "\n No se pudo ABRIR el archivo..." );
  157. }
  158. if( par == 5 ){
  159. printf( "\n No se pudo CERRAR el archivo..." );
  160. }
  161. if( par == 6 ){
  162. printf( "\n No se pudo BORRAR el archivo..." );
  163. }
  164. if( par == 7 ){
  165. printf( "\n No se pudo RENOMBRAR el archivo..." );
  166. }
  167. if( par == 8 ){
  168. printf( "\n No se pudo ABRIR el archivo(.txt)..." );
  169. }
  170. if( par == 9 ){
  171. printf( "\n No se pudo ABRIR el archivo(.bak)..." );
  172. }
  173. if( par == 10 ){
  174. printf( "\n No se pudo EFECTUAR la copia de seguridad..." );
  175. }
  176. if( par == 11 ){
  177. printf( "\n No se pudo CERRAR el archivo(.txt)..." );
  178. }
  179. if( par == 12 ){
  180. printf( "\n No se pudo CERRAR el archivo(.bak)..." );
  181. }
  182.  
  183.  
  184. printf( "\n Pulse una tecla para continuar..."); a = getchar();
  185.    if( a != '\n') while ((ch = getchar()) != EOF && ch != '\n');
  186. }
  187.  

Saludos.
10  Programación / Programación C/C++ / Plantilla para trabajar con archivos en lenguaje C. en: 11 Abril 2017, 18:41 pm
Hola, gente ¿cómo están?
Lo que me trae en este caso no es para pedir ayuda porque el programa no funciona, lo que quisiera es que me digan que debería cambiar, que les parece, ¿está bien encarado?, estoy consiente que esto se lo debería preguntar a un profe o a un amigo, pero como ya algunos conocen por mi edad (65) no tengo ni una cosa ni la otra,-
Es todo, espero que alguien con mucho tiempo lo revice, no tengo ningún apuro. -   

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. #define MAX 80
  6.  
  7. void copiaDeSeguridad( FILE *ptrGuiaTel, FILE *ptrGtTemp ); //GT0001
  8. void ingresarFrase( char frase[] ); //GT0002
  9. void copiar( FILE *ptrGuiaTel, FILE *ptrGtTemp, char frase[] ); //GT0003
  10. void errorEscritura( FILE *ptrGuiaTel, FILE *ptrGtTemp ); //GT0004
  11. void mensaje( void );
  12.  
  13.  
  14. int main( int argc,char **argv ){
  15. FILE *ptrGuiaTel = NULL, *ptrGtTemp = NULL;
  16. char frase[MAX];
  17.  
  18. copiaDeSeguridad( ptrGuiaTel, ptrGtTemp ); //GT0001
  19. ingresarFrase( frase ); //GT0002
  20. copiar( ptrGuiaTel, ptrGtTemp, frase ); //GT0003
  21.  
  22. return EXIT_SUCCESS;
  23. }
  24.  
  25.  
  26. void copiaDeSeguridad( FILE *ptrGuiaTel, FILE *ptrGtTemp ){ //GT0001
  27. char c, x;
  28.  
  29. if( !( ptrGuiaTel = fopen( "archGuiaTel.txt", "r" ))){
  30. mensaje();
  31. exit(1);
  32. }
  33. if( !( ptrGtTemp = fopen( "archGtTemp.txt", "w" ))){
  34. mensaje();
  35. exit(1);
  36. }
  37.  
  38. c = fgetc( ptrGuiaTel );
  39. while ( c != EOF ){
  40. x = fputc( c, ptrGtTemp );
  41. if (x != c){
  42. mensaje();
  43. exit(1);
  44. }
  45. c = fgetc( ptrGuiaTel );
  46. }
  47.  
  48. if( ( fclose( ptrGuiaTel ) ) ){
  49. mensaje();
  50. exit(1);
  51. }
  52. if( ( fclose( ptrGtTemp ) ) ){
  53. mensaje();
  54. exit(1);
  55. }
  56. }
  57.  
  58. void ingresarFrase( char frase[] ){ //GT0002
  59. int ok=0;
  60.  
  61. do{
  62. printf( "\n Ingrese frase.....:" );
  63. fgets( frase, MAX, stdin );
  64. ok = strlen( frase );
  65. }while( ok <= 1 );
  66. }
  67.  
  68. void copiar( FILE *ptrGuiaTel, FILE *ptrGtTemp, char frase[] ){ //GT0003
  69.  
  70. if( !(ptrGuiaTel = fopen( "archGuiaTel.txt", "a" ))){
  71. mensaje();
  72. exit(1);
  73. }
  74.  
  75. fprintf( ptrGuiaTel, "%s", frase );
  76.  
  77. if( fflush( ptrGuiaTel ) != 0){
  78. mensaje();
  79. fclose( ptrGuiaTel );
  80. errorEscritura( ptrGuiaTel, ptrGtTemp ); //GT0004
  81. exit(1);
  82. }
  83.  
  84. if( ( fclose( ptrGuiaTel ) ) ){
  85. mensaje();
  86. exit(1);
  87. }
  88. }
  89.  
  90. void errorEscritura( FILE *ptrGuiaTel, FILE *ptrGtTemp ){ //GT0004
  91.  
  92. if( rename("archGtTemp.txt","archGuiaTel.txt") !=0 ){
  93. mensaje();
  94. exit(1);
  95. }
  96.  
  97. if(remove( "archGuiaTel.txt") !=0 ){
  98. mensaje();
  99. exit(1);
  100. }
  101. }
  102.  
  103. void mensaje( void ){
  104. int ch, a;
  105.  
  106. printf( "\n Ha ocurrido un error y el programa finaliza sin cambios en el archivo." );
  107. printf( "\n Pulse una tecla para continuar..."); a = getchar();
  108. if( a != '\n') while ((ch = getchar()) != EOF && ch != '\n');
  109. }
  110.  
  111. /*
  112. GT0001 - Funcion copiaDeSeguridad
  113. Efectuo una copia del archivo original por si fallara la escritura en el mismo, si esto
  114. ocurriera renombro la copia con el mismo nombre que el archivo original y a este lo borro,
  115. con esto me aseguro que el archivo en disco no quede corrupto. -
  116. Si fallara la apertura de los archivos archGuiaTel.txt o archGtTemp.txt imprimo un mensaje
  117. y cierro el programa (mensaje y exit(1)), lo mismo ocurrira si falla la escritura en el archivo temporal (if (x != c){).-
  118. Si la apertura de los 2 archivos es correcta como asi la escritura, solo queda constatar si
  119. el cierre de los mismos ocurre sin errores, de lo contrario se procedera de la misma manera que en la apertura de los mismos (mensaje y exit (1). -
  120. Nota: En esta funcion se abre y se cierra el archivo "archGtTemp.txt".
  121. //GT0002 - Funcion ingresarFrase  
  122. El do-while es para que no se pueda salir de la funcion si no se ha ingresado por lo menos
  123. un dígito.-
  124. //GT0003 - Funcion copiar
  125. Con fprintf( ptrGuiaTel, "%s", frase ); copio la frase en el buffer intermedio y con fflush
  126. copio la frase desde el buffer al disco rigido(archGuiaTel.txt).-
  127. Verifico si la apertura y cierre del archivo ocurre sin errores.-
  128. En el caso de que fallara fflush llamo a la (//GT0004) funcion errorEscritura para renombrar el archivo archGtTemp.txt por archGuiaTel.txt para luego borrar el
  129.                 archivo original que seguramente si no se pudo escribir es porque está corrupto(al final con remove lo borro). -
  130. */

Saludos.
Páginas: [1] 2 3 4 5 6 7 8 9 10
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines