elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  crear archivo con variable de entorno c++ windows
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: crear archivo con variable de entorno c++ windows  (Leído 3,359 veces)
soyloqbuskas

Desconectado Desconectado

Mensajes: 218


¡El conocimiento es de todos!


Ver Perfil
crear archivo con variable de entorno c++ windows
« en: 19 Noviembre 2023, 12:05 pm »

Buenas a todos.

Querria saber como crear un archivo en una carpeta referenciada mediante variable de entorno (o variable del sistema) programando en c o c++ para windows.

Seria algo asi pero con codigo: crearArchivo("nombre archivo","%rutaCarpetaEntorno%/subdirectorio");

¿Sabéis lo que digo?

Gracias, un saludo.



En línea

"Si tienes 1 manzana y yo tengo otra manzana...
y las intercambiamos, ambos seguiremos teniendo 1 manzana.
Pero...si tu tienes 1 idea y yo tengo otra idea...
y las intercambiamos, ambos tendremos 2 ideas."


George Bernard Shaw
EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.072



Ver Perfil
Re: crear archivo con variable de entorno c++ windows
« Respuesta #1 en: 19 Noviembre 2023, 17:06 pm »

Claro, puedes pedir variables de entorno con una librería clásica de C que se puede utilizar en C++: cstdlib y la instrucción: getenv("VariableDeEntorno")

Código
  1. #include <cstdlib>
  2. #include <iostream>
  3.  
  4. int main() {
  5.  std::cout << std::getenv("UserName");
  6. }


En línea

Atika

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: crear archivo con variable de entorno c++ windows
« Respuesta #2 en: 11 Diciembre 2023, 23:00 pm »

En Windows, puedes acceder a las variables de entorno utilizando la función  getenv() para obtener la ruta de la carpeta desde la variable de entorno y luego usar esa ruta para crear un archivo. Aquí te pongo un ejemplo en C++:

Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cstdlib> // Incluir la librería para manejar variables de entorno
  4.  
  5. bool crearArchivo(const std::string& nombreArchivo, const std::string& rutaCarpeta) {
  6.    // Obtener la ruta de la carpeta desde la variable de entorno
  7.    const char* rutaEntorno = getenv("NOMBRE_VARIABLE_ENTORNO"); // Reemplaza "NOMBRE_VARIABLE_ENTORNO" con el nombre de la variable de entorno que necesitas
  8.  
  9.    if (rutaEntorno == nullptr) {
  10.        std::cerr << "La variable de entorno no está definida." << std::endl;
  11.        return false;
  12.    }
  13.  
  14.    // Combinar la ruta de la carpeta del entorno con la subcarpeta
  15.    std::string rutaCompleta = std::string(rutaEntorno) + "/" + rutaCarpeta;
  16.  
  17.    // Combinar la ruta completa con el nombre del archivo
  18.    rutaCompleta += "/" + nombreArchivo;
  19.  
  20.    // Crear el archivo en la ruta completa
  21.    std::ofstream archivo(rutaCompleta);
  22.  
  23.    if (!archivo.is_open()) {
  24.        std::cerr << "Error al crear el archivo." << std::endl;
  25.        return false;
  26.    }
  27.  
  28.    archivo << "Este es el contenido del archivo." << std::endl;
  29.    archivo.close();
  30.  
  31.    std::cout << "Archivo creado en: " << rutaCompleta << std::endl;
  32.    return true;
  33. }
  34.  
  35. int main() {
  36.    std::string nombreArchivo = "miArchivo.txt";
  37.    std::string rutaCarpetaEntorno = "subdirectorio";
  38.  
  39.    if (crearArchivo(nombreArchivo, rutaCarpetaEntorno)) {
  40.        std::cout << "¡Archivo creado exitosamente!" << std::endl;
  41.    } else {
  42.        std::cerr << "Hubo un error al crear el archivo." << std::endl;
  43.    }
  44.  
  45.    return 0;
  46. }


Haber si te sirve este programa.

MOD: Etiqueta GeSHi
« Última modificación: 12 Diciembre 2023, 01:09 am por MCKSys Argentina » En línea

soyloqbuskas

Desconectado Desconectado

Mensajes: 218


¡El conocimiento es de todos!


Ver Perfil
Re: crear archivo con variable de entorno c++ windows
« Respuesta #3 en: 12 Diciembre 2023, 14:38 pm »

Muchas gracias a los 2. Me ha servido de mucho.

Un saludo.
En línea

"Si tienes 1 manzana y yo tengo otra manzana...
y las intercambiamos, ambos seguiremos teniendo 1 manzana.
Pero...si tu tienes 1 idea y yo tengo otra idea...
y las intercambiamos, ambos tendremos 2 ideas."


George Bernard Shaw
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Variable de entorno
Java
alzehimer_cerebral 4 4,121 Último mensaje 3 Abril 2011, 13:15 pm
por alzehimer_cerebral
Contenido de un documento de texto hacia una variable de entorno en .bat o .cmd
Scripting
4dr14n31t0r 3 5,927 Último mensaje 21 Marzo 2015, 05:51 am
por Eleкtro
[SOURCE] PATHS (Administrador de la variable de entorno PATH y PATHEXT)
.NET (C#, VB.NET, ASP)
Eleкtro 2 2,993 Último mensaje 11 Junio 2015, 04:50 am
por Eleкtro
Ayuda con la variable de entorno %CD%
Scripting
tomasscfgcu 2 1,877 Último mensaje 15 Mayo 2015, 15:49 pm
por tomasscfgcu
variable de entorno
Scripting
eduardoemen 2 1,782 Último mensaje 28 Febrero 2019, 16:28 pm
por eduardoemen
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines