Foros del Web » Programación para mayores de 30 ;) » C/C++ »

archivos c++

Estas en el tema de archivos c++ en el foro de C/C++ en Foros del Web. ¿Programa en C++ Archivos? Necesito hacer un programa que lea un archivo txt lo copie con sus caracteres en mayuscula, y se debe hacer sumandole ...
  #1 (permalink)  
Antiguo 02/11/2010, 15:07
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1
Antigüedad: 13 años, 6 meses
Puntos: 0
archivos c++

¿Programa en C++ Archivos?
Necesito hacer un programa que lea un archivo txt lo copie con sus caracteres en mayuscula, y se debe hacer sumandole un valor al comando ascii de cada caracter, pero no se donde poner las condiciones...!

hasta ahora tengo esto!

#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;

int main()
{
ifstream origen("Pruebas.txt");
char linea[128];

if(origen.fail())
cerr << "Error al abrir el archivo Pruebas.txt" << endl;
else
{
ofstream destino("Copia.txt");
if(destino.fail())
cerr << "Error al crear el archivo: Copia.txt" << endl;
else
{
while(!origen.eof())
{
origen.getline(linea, sizeof(linea));
if(origen.good()) // si lectura ok y
if(origen.eof()) // si eof, -> termina
exit(1); // el programa
else
destino << linea << endl;
if(destino.fail())
{
cerr << "Fallo de escritura en archivo" << endl;
exit(1);
}
}
}
destino.close();
}
origen.close();

return 0;
}

Muchas Gracias!!
  #2 (permalink)  
Antiguo 02/11/2010, 22:34
Avatar de gvite666  
Fecha de Ingreso: abril-2010
Mensajes: 65
Antigüedad: 14 años
Puntos: 4
Respuesta: archivos c++

Pues mira este programa convierte de minusculas a mayusculas y lo puedes implementar despues de leer la linea de tu archivo origen.
Código C++:
Ver original
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. void main(void)
  7. {
  8.     char cadena[128];
  9.     int longCadena;
  10.     int i;
  11.     cout<<"ingresa una cadena: ";//pide una cadena
  12.     cin>>cadena;
  13.     longCadena=strlen(cadena);//obtiene la longitud que tiene la cadena
  14.     for(i=0;i<longCadena;i++)//recorre caracter por caracter
  15.         if(cadena[i]>=97&&cadena[i]<=122)//aqui preguntas si es caracter esta dentro del rango de las minusculas
  16.             cadena[i]=cadena[i]-32;//una "a" tiene valor 97 en ascii y "A" =65 entonces para convertirla seria A=97-32=65
  17.     cout<<cadena;
  18. }
espero esto te ayude.
Saludos
__________________
No pienses si no vas a actuar.

Etiquetas: c++
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:39.