file[1] = open("/tmp/file0.dat", O_RDWR,O_CREAT,0644);
이런식으로 파일 생성 하려고 하는데...
file0.dat이라는 파일이 tmp폴더에 저장이 되잖아..
근데 내가 파일을 여러개 만들어야 되고 파일마다 각자 다른 정보를 write해야해
만들어야 하는 파일 갯수는 입력으로 넣어 줄 거고..
그러면 파일들을 구분해야 하니까 파일 이름이 달라야 할 것 같은데,
"/tmp/file0.dat" <-- 얘를 파일 이름을 바꿔서 저장할수 있는 방법없어 형들 ㅠㅠ ? 도저히 못찾겠어..
내가 혹시나하고
file[0] = open("/tmp/file0.dat", O_RDWR,O_CREAT,0644);
file[1] = open("/tmp/file0.dat", O_RDWR,O_CREAT,0644);
이렇게 파일 디스크립터가 다르면 생성된 파일 이름이 같아도 다른 파일로 취급되지 않을까 싶어서 해봤는데
이런 식으로 하면 file[0]은 초기화되는건지 어쩌는건지 없어지고
file[1]로만 정보를 끌어다 쓸 수 있더라고.. 아무래도 file0.dat 원래 만들어진 곳에 다시 덮어씌워지는 것같아..
어케 해결할수업을까 ?? ㅠㅠ
... file1, file2...를 만들어
나도 그러고 싶은데, 파일 갯수는 입력으로 받을거라서 몇개를 만들어야 할지를 몰라.
그리구 일일이 미리 file1에 저장하고 file2에 저장하고 이렇게 다 써놓을수가없어서 ㅜㅜ for문 돌리 듯이 file[i] 이런식으로 해서 돌아가면서 저장시킬수있으면 좋을텐데 "/tmp/file0.dat" 이런식으로 쓰여 있는 곳 안에 for문으로 file뒤에 붙은 숫자를 바꿔줄수도없잖아 ㅜㅜ...
sprintf(filename, "/tmp/file%d.dat", i)
사랑해 형
ㅇㅇ 형 그런데 sprintf로 filename 안에 파일경로를 다 만든 다음에 open 에다가 저걸 넣어야 되는데...
그게 안되 ㅠㅠ open("file_path", ~~~~); 이런식으로 써야 되는데 file_path가 들어갈 자리에 filename을 넣어줘야 되는데 큰 따옴표 안은 다 캐릭터로만 읽혀서... 저장된 값을 저기에 집어넣는방법없어 ㅠㅠ ??
open(file_path, ~~~~); 변수 들어가는데 왜 따옴표를 써