Hola a todos, no soy programador de C++ pero estoy haciendo un proyecto y necesito q sea liviano y rapido y por ello necesito q este hecho en C++
Necesito remplazar los 3 espacios iniciales de un string.... en ocntre un codigo que es el siguiente y que funciona para remplazar strings:
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string str("one three two four");
string str2("three");
str.replace(str.find(str2),str2.length(),"five");
cout << str << endl;
return 0;
}
Pero cuando lo utilizo en mi proyecto me da error:
#include <iostream>
#include <stdlib.h>
#include <string>
#include <fstream>
using namespace std;
int main() {
ifstream in("archivo.txt"); // Open for reading
ofstream out("j.txt"); // Open for writing
string s;
string re(" ");
while(getline(in, s)) // Discards newline char
s.replace(s.find(re),re.length(),"");
out << s << "\n"; // ... must add it back
system("pause>nul");
}
(El programa copia un archivo llamado "archivo.txt" a otro llamado "j.txt" y tiene que quitar los 3 espacios q van a haber al inicio del string)....... pero da error......
Porque sucede esto????
Hola francoyo1998, esto no es Python, en C++ hay que poner llaves para declarar los ámbitos, no es identándolo. Con tu código solo reemplazarías un triple espacio por cada línea, prueba así:
#include <iostream>
#include <stdlib.h>
#include <string>
#include <fstream>
using namespace std;
int main()
{
ifstream in("archivo.txt"); // Open for reading
ofstream out("j.txt"); // Open for writing
string s;
//string re(" "); no es necesario...
size_t position;
if(in)
while(getline(in, s)) // Discards newline char
{
// We find the first match
position = s.find(" ");
// We replace " " until the method find dont find a new match.
while(position != string::npos)
{
// We replace the rest of the matches
s.replace(position, re.length()," ");
position = s.find(re);
}
out << s << "\n"; // ... must add it back
}
else
cout << "File couldn't be opened" << endl;
//system("pause>nul");
cin.get();
}
Lo del cin.get() es para que sea portable.
Saludos.
ajajajjaja se me olvido, no las vi xD
Muchas gracias
Ojala fuera Python :P
Algo aun no funciona, creo q dire de forma mas concreta lo q quiero.... si sabes un poco de batch sabes para q sirve el comando "net start" sin parametros.... el comando net start lista todos los servicios en ejecucion de la siguiente forma:
CitarSe han iniciado estos servicios de Windows:
Acceso a dispositivo de interfaz humana
Administración de aplicaciones
Administrador de cuentas de seguridad
Administrador de identidad de redes de mismo nivel
Administrador de sesión del Administrador de ventanas de escritorio
Adobe Acrobat Update Service
Adquisición de imágenes de Windows (WIA)
Agrupación de red del mismo nivel
Aislamiento de claves CNG
AMD External Events Utility
AMD FUEL Service
Aplicación auxiliar de NetBIOS sobre TCP/IP
Aplicación auxiliar IP
Archivos sin conexión
Asignador de extremos de RPC
Audio de Windows
Centro de seguridad
Cliente de directiva de grupo
Cliente de seguimiento de vínculos distribuidos
Cliente DHCP
Cliente DNS
Cola de impresión
Compilador de extremo de audio de Windows
Conexiones de red
Detección de hardware shell
Detección SSDP
Dispositivo host de UPnP
Energía
Epson Scanner Service
EPSON V3 Service4(04)
Escritor VSS de SQL Server
Escucha de Grupo Hogar
Estación de trabajo
Examinador de equipos
Experiencia con aplicaciones
Firewall de Windows
Host de proveedor de detección de función
Host del servicio de diagnóstico
Iniciador de procesos de servidor DCOM
Instrumental de administración de Windows
Llamada a procedimiento remoto (RPC)
Motor de filtrado de base
Plug and Play
Programador de aplicaciones multimedia
Programador de tareas
Protocolo de resolución de nombres de mismo nivel
Proveedor de Grupo Hogar
Publicación de recurso de detección de función
Reconocimiento de ubicación de red
Registro de eventos de Windows
Servicio de caché de fuentes de Windows
Servicio de compatibilidad de programas
Servicio de detección automática de proxy web WinHTTP
Servicio de directivas de diagnóstico
Servicio de lista de redes
Servicio de notificación de eventos de sistema
Servicio de perfil de usuario
Servicio de transferencia inteligente en segundo plano (BITS)
Servicio de uso compartido de red del Reproductor de Windows Media
Servicio enumerador de dispositivos portátiles
Servicio Interfaz de almacenamiento en red
Servicios de cifrado
Servidor
Sistema de eventos COM+
SQL Server (SQLEXPRESS)
Superfetch
Temas
Windows Defender
Windows Driver Foundation - User-mode Driver Framework
Windows Search
Se ha completado el comando correctamente.
pero yo necesito q se borren esos 3 espacios q hay antes del nombre de cada servicio y redirecionarlo a un archivo..... eso es todo.... pero no soy programador de C++ asi q me cuesta hacerlo a tan bajo nivel :/
Ta gracias ya lo logre, habia una linea en tu codigo q me estaba esorbando para hacerlo, la remplaze y quedo todo funcionando, ya puedo seguir con mi proyecto, muchas gracias.