디렉토리생성

익명 사용자의 이미지

안녕하세요.
파일을 생성하는데 존재하지 않는 디렉토리에서 fopen하니까 에러가 발생
하더군요. =_=;;
파일을 생성하면서 존재하지 않는 디렉토리가 경로에 포함되어 있다면 같
이 생성하는 것...방법이 있을까요?
없다면 디렉토리 생성하는 방법 좀 가르쳐주세요.

그럼 메리크리스마스

익명 사용자의 이미지


제가 사용하고 있는 CreateAppDir 입니다.
참고 하십시요.

/*----------------------------------------------------------------
* 함 수 명 CreateAppDir
* 설 명 App의 Drectory를 생성하는 함수이다.
* 매개변수 char *d, int flag
* Return int
* 참 고 Directory Create
* 주 의 flag 1=Dir, 2=File
Base Dir부터 만들기 때문에 조심해서
사용해야 한다.
-----------------------------------------------------------------*/
int CreateAppDir(char *d, int flag)
{
int k, cnt=0;
char tmp[1024], buf[1024];
struct stat st;

memset(tmp, 0x00, sizeof(tmp));
memset(buf, 0x00, sizeof(buf));
strcpy(buf, d);

if(flag == 1 && buf[strlen(buf)-1] != '\\' && buf[strlen(buf)-
1] != '/') strcat(buf, "/");

for(k = 0; k < (int)strlen(buf); k++) {
if(buf[k] == '\\' || buf[k] == '/') {
cnt++;
buf[k] = '/';
if(strlen(tmp) > 0 && cnt > 1) {
if(stat(tmp, &st) < 0) {
if(mkdir(tmp, DIRFLAG) < 0) {
printf("(%s)Directory를 생성할 수 없습니
다.\n", tmp);
return(RFAIL);
}
}
}
}
tmp[k] = buf[k];
}

for(k = 0; k < (int)strlen(d); k++) if(d[k] == '\\' || d[k]
== '/') d[k] = '/';
if(flag == 1 && (d[strlen(buf)-1] == '\\' || d[strlen(buf)-1]
== '/')) d[strlen(buf)-1] = 0;

return(ROK);
}

익명 사용자의 이미지

#man mkdir

익명 사용자의 이미지

해결을 했습니다.
mkdir("경로", 509);하면 되더군요.
완전한 사용법은 직접 해보면서 익힐 수 밖에 없겠네요.
혹시 아시는 분 있으시면 답변 주심 안될까요?

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.