初心者の者です。
プログラムでディレクトリ(フォルダ)の作り方をご存知の方教えてください。

fopen("data/○○.dat", "w")で、
dataというディレクトリ(フォルダ)の中に○○.datというファイルを
作ることができるという事は分かったのですが、この方法では
あらかじめdataというディレクトリを作らなければなりません。

プログラムを実行させるときにディレクトリを作り、その中にファイルを
作るにはどのようにすればよいでしょうか?

また、動作環境はWindowsとUNIXの両方で使いたいのですが,
使い分けなければならないのでしょうか?

よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

mkdir(path, mode)


という関数が用意されているはずです。
これはUnix/WIndows双方で利用可能なものです。
pathには作成したいディレクトリのフルパスを指定します。
modeはアクセス権限の指定です。
Windowsの場合はVC++のヘルプドキュメントのランタイムライブラリリファレンスを参照すれば載っているはずです。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
おかげさまで解決することができました。
また分からない事があると思いますので、
その時はまたよろしくお願いします。

お礼日時:2001/05/22 23:01

> また、動作環境はWindowsとUNIXの両方で使いたいのですが,


> 使い分けなければならないのでしょうか?

先に回答された通り mkdir() は、Windows でも unix でも用意はされている
のですが、プロトタイプを宣言しているヘッダファイルが違います。

ソースを共通にするのであれば、定義済みマクロを使います。例えば、

#ifdef unix
#include <sys/stat.h>
#else /* Windows */
#include <direct.h>
#endif

という感じ。たぶん、unix という定義済みマクロは、どの unix でも
通じると思うのですが、一応確認を。また、それぞれのヘッダファイルも
念の為に確認した方が良いと思います。
    • good
    • 0
この回答へのお礼

細やかなアドバイスどうもありがとうございます。
とても参考になりました。
また質問することがあると思いますが、
その時はよろしくお願いします。

お礼日時:2001/05/22 23:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング