Miércoles 20 de Noviembre de 2024, 16:28
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
escrivir valores en un archivo
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: escrivir valores en un archivo (Leído 2296 veces)
Alfonsos1
Miembro activo
Mensajes: 60
escrivir valores en un archivo
«
en:
Martes 18 de Enero de 2011, 01:00 »
0
Quiero hacer un programa donde se escriva en un archivo los balores de un array
el array seria este:
int miarray[4];
miarray[0]=412;
miarray[1]=21;
miarray[2]=5324;
miarray[3]=44522;
el archivo estaria en la misma carpeta del programa
¿como seria el codigo?
Tweet
m0skit0
Miembro de PLATA
Mensajes: 2337
Nacionalidad:
Re: escrivir valores en un archivo
«
Respuesta #1 en:
Martes 18 de Enero de 2011, 08:13 »
0
fopen() fread() fclose()
Fr33k K0mpu73r
Alfonsos1
Miembro activo
Mensajes: 60
Re: escrivir valores en un archivo
«
Respuesta #2 en:
Martes 18 de Enero de 2011, 18:21 »
0
fread no sirve para escrivir, solo sirve para leer,
por ejemplo lo que quiero es ingresar el NUMERO 100 (no los caracteres "1" "0" "0") en el archivo asd.txt.
Código: C++
#include <stdio.h>
#include <cstdlib>
int
main
(
)
{
int
var
=
100
;
FILE
*
fs
=
fopen
(
"asd.txt"
,
"wb"
)
;
//Aqui ingresar el valor de "var"
fclose
(
fs
)
;
system
(
"pause"
)
;
return
0
;
}
Osea que luego de haber ejecutado el programa, al abrir el archivo asd.txt, me tiene que aparecer el caracter que corresponde al valor 100 (segun la codificacion ANSI creo) osea el carater "d"
LO que no quiero es que al abrir el txt me aparescan los caracteres "100"
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: escrivir valores en un archivo
«
Respuesta #3 en:
Martes 18 de Enero de 2011, 18:30 »
0
Y bueno ... fwrite.
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
Alfonsos1
Miembro activo
Mensajes: 60
Re: escrivir valores en un archivo
«
Respuesta #4 en:
Martes 18 de Enero de 2011, 18:49 »
0
OMFG! alfin lo logre, gracias
int main()
{
int var[1024];
var[0]=100;
FILE *fs=fopen("asd.txt", "wb");
fwrite(var, 1, 1, fs);
system("pause");
return 0;
}
m0skit0
Miembro de PLATA
Mensajes: 2337
Nacionalidad:
Re: escrivir valores en un archivo
«
Respuesta #5 en:
Miércoles 19 de Enero de 2011, 00:13 »
0
Es que no entendí qué quisiste decir con "escrivir"
Fr33k K0mpu73r
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: escrivir valores en un archivo
«
Respuesta #6 en:
Miércoles 19 de Enero de 2011, 00:36 »
0
Cita de: "m0skit0"
Es que no entendí qué quisiste decir con "escrivir"
Es que era fbrite
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
Alfonsos1
Miembro activo
Mensajes: 60
Re: escrivir valores en un archivo
«
Respuesta #7 en:
Miércoles 19 de Enero de 2011, 16:26 »
0
ahora probe con mas de 1 caracter y no me funciona:
int var[1024];
var[0]=102;//El codigo ANSI de "f" es 102
var[1]=102;
FILE *fs=fopen("asd.txt", "wb");
fwrite(var, 1, 2, fs);
Lo que yo quiero que haga este codigo es que escriba en asd.txt "ff", pero cuando lo ejecuto lo que hace es escribir "f ",
el primer caracter esta bien, pero el segundo en lugar de escrivir una "f" escrive un espacio.
Geo
Miembro de PLATA
Mensajes: 1011
Nacionalidad:
Re: escrivir valores en un archivo
«
Respuesta #8 en:
Jueves 20 de Enero de 2011, 17:32 »
0
Revisa la sintaxis de la función
fwrite
:
Código: C
fwrite
(
puntero_array
,
tamaño_en_bytes_de_cada_elemento
,
numero_de_elementos
,
puntero_FILE
)
;
Una variable tipo
int
no ocupa un solo byte en memoria, su tamaño depende de la plataforma en que trabajes, si es un sistema de 32 bits probablemente ocupe 4 bytes. En fin, que para escribir ff en tu archivo debes cambiar:
Código: C
fwrite
(
var
,
1
,
2
,
fs
)
;
por
Código: C
fwrite
(
var
,
4
,
2
,
fs
)
;
O mejor aún, si no sabes cuántos bytes ocupa un tipo
int
usa
sizeof
:
Código: C
fwrite
(
var
,
sizeof
(
int
)
,
2
,
fs
)
;
La imaginación es el límite.
Hardware & Software
|
Mexchip
m0skit0
Miembro de PLATA
Mensajes: 2337
Nacionalidad:
Re: escrivir valores en un archivo
«
Respuesta #9 en:
Jueves 20 de Enero de 2011, 19:17 »
0
Lo que pasa es que así no te va a escribir ff, sino [][][]f[][][]f. Tienes que usar
char
.
Fr33k K0mpu73r
Alfonsos1
Miembro activo
Mensajes: 60
Re: escrivir valores en un archivo
«
Respuesta #10 en:
Jueves 20 de Enero de 2011, 23:11 »
0
pase a char y ahora anda bien
gracias
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
escrivir valores en un archivo