Reemplazo de caracteres &

06/08/2003 - 16:48 por Eyes | Informe spam
Hola a todos y gracias!

Deseo reemplazar los caracteres "&" de una cadena con la
cadena "#&38" o "chr(38)", antes de guardarla a disco.

Tengo algo así:

fstream cache(ruta, ios::in|ios::out);

if (!cache.is_open())
return S_FALSE;

cadena = (const char *)xml;
//la cadena xml es un tipo de datos no nativo de VC++

//aqui se debe reemplazar los caracteres "&"

cache.write(cadena, xml.getLength()-1);
cache.close();

¿Como puedo reempzarlos dichos caracteres?¿Existe una
función que lo haga directamente?(esto último porque lo
que consulte no pude implmentarlo) ¿HabrŽpa que
hacerlo "manualmente", recorriendo la cadena?

Saludos

Preguntas similare

Leer las respuestas

#1 Rodrigo Corral González
07/08/2003 - 15:12 | Informe spam
Puedes hacer lo que necesitas de manera sencilla usando los metodos
replace y find de la clase string;

#include <string>
#include <iostream>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
string cadena = "& Esta & cadena & contiene &";
const string remplazo = "#&38";

string::size_type pos = 0;
while((pos = cadena.find("&", pos)) != string::npos)
{
cadena.replace(pos, 1, remplazo);
pos = pos + 2;
}
cout << cadena << endl;

return 0;
}

Un saludo
Rodrigo Corral González
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida