Autor
|
Tema: Tengo un problema con un programa que no encuentro la informacion (Leído 5,909 veces)
|
Fera Core
Desconectado
Mensajes: 12
|
Gracias por la ayuda. aqui tengo el programa : #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <fstream.h> void main(void) { FILE *pf; // declaro mi archivo char *nombre; clrscr(); puts("Ingrese el nombre del archivo que desea abrir"; gets(nombre); strcat(nombre, ".txt"); pf=fopen("c:\\.txt","r"); if(pf==NULL) { perror("Error al abrir el archivo.doc"); getch(); } fclose(pf); }
[MOD] Para publicar codigo usa etiquetas GeSHi, gracias.
|
|
« Última modificación: 14 Abril 2016, 05:51 am por Fera Core »
|
En línea
|
|
|
|
MAFUS
Desconectado
Mensajes: 1.603
|
Si es C no uses fstream. Intenta no usar conio.h sólo es de Borland, cunado en tu trabajo no tengas TC++ estarás vendido. En cambio, si es C++ intenta usar las librerías de C++ en vez de C. Usar TC++ sí o sí. Sabía que en la facultad, almenos el C, lo están destrozando. Por eso a la gente no le gusta.
|
|
|
En línea
|
|
|
|
Gunhack
Desconectado
Mensajes: 42
|
Hola soy estudiante en ing. de computación no se si alguien les ha pasado que en la escuela le enseñan lo basico y despues te dejan hacer algo avanzado que ni siquiera en libros puedo encontrar algo de información. Bueno eh estado intentando hacer una tarea que solicite al usuario el documento de word (.doc) a abrirlo desde una usb. Y de eso lo que esta en su contenido hay que crear un respaldo en texto. Lo ultimo es lo de menos, lo que no logro es cambiar la extensión de doc a txt, para abrir el archivo , porque solo se pueden abrir archivos en txt y el bin entonces pense que lo mejor es cambiar la extensión para abrirlo. Lo estoy haciendo en tubo c++, el profe no me deja utilizar otro compilador. Eh usado dev c++ pero me da muchos errores en las librerias conio, fstream ,windows y muchas mas , aparte que no me deja crear graficos. Si conocen uno mejor que estos 2 y que sistema operativo deberia de usar . por favor comentarlo ya que turbo c no me gusta mucho tiene muchos bugs en w7 y en dev c muchas librerias no funcionan. El problema no se refiere a que el programa haga la conversión automáticamente, lo que pide es que el usuario mismo haga su copia del documento .doc a .txt para poder leerlo ahora sí desde el programa,ya que por sí solo C o C++ no pueden leer archivos de word, o almenos no que yo sepa... Te comento tu código para decirte en que estás mal... FILE *pf; // declaro mi archivo char *nombre; clrscr();
En "char* nombre " No estás creando más que un apuntador y es imposible copiarle algo, tendrías que darle un tamaño específico... char nombre[50];
if(pf==NULL) { perror("Error al abrir el archivo.doc"); // ".txt!!! xD getch(); }
Para leerlo, ya teniendo el archivo .txt yo haría lo siguiente... FILE *pf; F = fopen(Nombre, "r"); if(F == NULL) { printf("Error al abrir el archivo!"); return 0; } printf("Texto en: %s\n\n", Nombre); while(!feof(F)) { char c = getc(F); printf("%c", c); } fclose(F);
Y lo implementaría de esta manera #include <stdio.h> #include <string.h> #include <iostream> #include <fstream> #include <windows.h> using namespace std; void limpriarCadena(char cad[], int n) { for(int i = 0; i < n; i++) { cad[i] = '\0'; } } int main() { char Unidad[3]; char Ruta[150]; char RutaAbsoluta[150]; char NombreArchivo[50]; FILE* F; do { system("cls"); limpriarCadena(Unidad, 3); limpriarCadena(Ruta, 150); limpriarCadena(RutaAbsoluta, 150); limpriarCadena(NombreArchivo, 50); printf("-Ingresa la letra de la unidad de tu dispositivo(C,D,F...)\n-> "); scanf("%c", &Unidad[0]); strcat(Unidad, ":\\"); strcpy(RutaAbsoluta, Unidad); printf("\n-Ingresa la ruta del archivo(deja en blanco si esta en la raiz)\n-> %s", Unidad); while(getchar()!='\n'); gets(Ruta); if(strlen(Ruta)!=0) { strcat(RutaAbsoluta, Ruta); strcat(RutaAbsoluta, "\\"); } printf("\nIngresa el nombre del archivo a abrir: "); gets(NombreArchivo); strcat(NombreArchivo, ".txt"); strcat(RutaAbsoluta, NombreArchivo); F = fopen(RutaAbsoluta, "r"); if(F == NULL) { printf("\n\nError al abrir el archivo! Intenta de nuevo...\nPresiona enter para continuar..."); while(getchar()!='\n'); } } while(F == NULL); system("cls"); printf("Texto en: %s\n\n", RutaAbsoluta); while(!feof(F)) { char c = getc(F); printf("%c", c); } fclose(F); }
|
|
|
En línea
|
|
|
|
Fera Core
Desconectado
Mensajes: 12
|
Si es C no uses fstream. Intenta no usar conio.h sólo es de Borland, cunado en tu trabajo no tengas TC++ estarás vendido. En cambio, si es C++ intenta usar las librerías de C++ en vez de C. Usar TC++ sí o sí. Sabía que en la facultad, almenos el C, lo están destrozando. Por eso a la gente no le gusta.
si es c++, cuales son las librerias c++ , ami me han enseñado esas librerias para c++ y c
|
|
|
En línea
|
|
|
|
Fera Core
Desconectado
Mensajes: 12
|
|
.
« Respuesta #4 en: 13 Abril 2016, 02:54 am » |
|
.
|
|
« Última modificación: 14 Abril 2016, 05:48 am por Fera Core »
|
En línea
|
|
|
|
Fera Core
Desconectado
Mensajes: 12
|
Muchas gracias Gunhack por ayudar a , solo nesecitaba orientacion y consejos, ya que estas tareas son mas avanzado de lo que me enseñan. Y aunque me hubieran acosenjado no hubiera entendido en su totalidad hay muchas cosas que no habia visto , Ya solo tengo que entender el codigo que hiciste para aprender de ello. voy en tercero y esto de estructura de datos y archivos. Son algo complicados ya veo porque nadie le habia entregado esa tarea al profe.En internet solo hay informacion basica sobre archivos. otra cosa en turbo c++ no me corre , solo corregi algunos detalles que conozco como que la libreria iostream y fstream no tengan la .h de encabezado XD y en turbo c para limpiar pantalla es clrscr(); Si nesecitas un dibujo , un logo o una resmasterizacion me mandas un mensaje a facebook "Fera Core" ahi le hayo mas aunque estar programando eh perdido algo de practica. por la escuela no eh tenido chance de hacer ilustraciones por eso tengo esos, pero ya en abril salgo de vacaciones ahi te puedo regresar el favor aqui mi deviant art: http://feracore.deviantart.com/Gracias por tu ayuda y tiempo
|
|
« Última modificación: 14 Abril 2016, 06:01 am por Fera Core »
|
En línea
|
|
|
|
Fera Core
Desconectado
Mensajes: 12
|
De hecho el objetivo es abrir un archivo doc XD para eso nesecito convertirlo a txt y abre, despues hacer el respaldo en txt el programa funciona bien en dev c, busca los archivos de texto perfectamente. Que es mejor que turbo c++ para programar c++??? esta tarea es obligatorio usar turbo c++ , pero no me gusta turbo c.
|
|
|
En línea
|
|
|
|
Gunhack
Desconectado
Mensajes: 42
|
Muchas gracias Gunhack por ayudar a , solo nesecitaba orientacion y consejos, ya que estas tareas son mas avanzado de lo que me enseñan. Y aunque me hubieran acosenjado no hubiera entendido en su totalidad hay muchas cosas que no habia visto , Ya solo tengo que entender el codigo que hiciste para aprender de ello. voy en tercero y esto de estructura de datos y archivos. Son algo complicados ya veo porque nadie le habia entregado esa tarea al profe.En internet solo hay informacion basica sobre archivos. otra cosa en turbo c++ no me corre , solo corregi algunos detalles que conozco como que la libreria iostream y fstream no tengan la .h de encabezado XD y en turbo c para limpiar pantalla es clrscr(); Si nesecitas un dibujo , un logo o una resmasterizacion me mandas un mensaje a facebook "Fera Core" ahi le hayo mas aunque estar programando eh perdido algo de practica. por la escuela no eh tenido chance de hacer ilustraciones por eso tengo esos, pero ya en abril salgo de vacaciones ahi te puedo regresar el favor aqui mi deviant art: http://feracore.deviantart.com/Gracias por tu ayuda y tiempo De nada jaja para eso estamos! Y no te preocupes lo hacemos por amor a arte Y si, olvidé mencionar que no estaba usando turbo c pero supiste arreglarlo De hecho el objetivo es abrir un archivo doc XD para eso nesecito convertirlo a txt y abre, despues hacer el respaldo en txt el programa funciona bien en dev c, busca los archivos de texto perfectamente. Que es mejor que turbo c++ para programar c++??? esta tarea es obligatorio usar turbo c++ , pero no me gusta turbo c. Te digo que en c++ no se puede, de verdad x3 o bueno por lo menos no encontré nada, si lo haces, hasmelo saber! Yo uso codeblocks para programar en c y c++ no sé que tan bien recomendado esté pero a mi me sirve muy bien y me siento cómodo xD
|
|
|
En línea
|
|
|
|
|
Gunhack
Desconectado
Mensajes: 42
|
Gracias hermano, yo no encontré nada así
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
tengo un problema con este programa.
Programación C/C++
|
Danyel_Casvill
|
9
|
4,245
|
12 Noviembre 2010, 22:29 pm
por flony
|
|
|
Tengo problema con un programa que tengo que hacer para la universidad
.NET (C#, VB.NET, ASP)
|
wilman1010
|
3
|
4,260
|
3 Diciembre 2011, 20:22 pm
por Unbr0ken
|
|
|
tengo un problema con este programa en c++
Programación C/C++
|
mikael2018
|
1
|
1,789
|
29 Octubre 2014, 15:35 pm
por eferion
|
|
|
Tengo un problema con un programa en C
Programación C/C++
|
maic1020
|
1
|
1,790
|
11 Noviembre 2016, 13:51 pm
por MAFUS
|
|
|
Programa que no encuentro
« 1 2 3 »
Hacking
|
Adame_Rz
|
20
|
11,204
|
23 Noviembre 2022, 17:51 pm
por ramongalicia
|
|