iniファイルアクセスに潜む罠

 今時iniファイルですか

という話もあるとは思うけど、

何と言っても

「インストール不要」で「アクセスが楽」な設定ファイルということで、

僕はよく使っています。

(一応、僕のゲームに使っている

「Config.ini」

は基本的にどのゲームでも使えるようになってます。)



 で、今回はこれに関する注意点をば。





 iniファイル操作用関数は、

GetPrivateProfileString()

WritePrivateProfileString()

基本的にこの二つ。



 ※最後の引数「lpFileName」に関して。

ここにファイル名のみ(「"Config.ini"」とか「"Config.txt"」とか)を入れると、

ドライブ直下しか見てくれない(=exeと同ディレクトリにおいても読めない)ようです。

で、どうするかというと、

それまでのパスをきちんと書く必要があります。

ただ、相対パスは受け付けてくれるので、

"./Config.ini"

"C:/Games/Config/Config.txt"

で引数に放り込んでやればOKです。



 ※「GetPrivateProfileInt()」に関して。

一見すると、ものすごい使いやすそうな関数。

ただ、返り値は全く当てにならない値が返ってくるようなので、

基本的に使わない方が無難かと。

 データを数値で拾いたいときは、

「GetPrivateProfileString()」と「atoi()」あたりを組み合わせて使うのがいいかと。