【プログラミング】iniファイル


C#などの.NETでの開発では設定ファイルはXMLを使うことが多い気がしますが、iniファイルも現役で使えますよね。

私の場合、iniファイルの読み込み方法を知らなかったので、いつも手動でセクション探して、次の行をパラメータとして読み込むってのをやっていました。

ただ、本物のiniファイルの場合、パラメータの後ろにコメントを書いてもOKということが分かったので、Windowsでのiniファイル読み書きの方法をメモします。

以下のように関数を使うことで簡単にiniファイルから設定値を得ることができます。

【intで値を得たい場合】

UINT GetPrivateProfileInt(セクション名, キー名, キー名がない場合のデフォルト値, iniファイル名)

MSDN- GetPrivateProfileInt

【文字列で値を得たい場合】

DWORD GetPrivateProfileString(セクション名, キー名, デフォルト文字列, バッファポインタ, バッファサイズ, iniファイル名)

MSDN- GetPrivateProfileString

もし、doubleで取得したい場合は、文字列で取得してatof()などで変換すればよさそうですね。

item=1,2,3,4

のような値が入っている場合でも、文字列で取得してきてstrtok()で要素を分解してやれば取得できますね。

.NETのxml読み込み機能は色々不便を感じていたので、今後開発するアプリではiniファイルを扱うようにしようと思います。
(xml読み込みがもっと手軽にできるようになれば、設定ファイルはxmlで書きたいのが本音ですが。。。)


Mask_Siva

北の試される大地に生息しているSEです。
楽しみながらプログラムを作ったり、ゲームで遊んだりしています。

コメントをお待ちしております

HTMLタグは利用できません

Advertising



新品/中古ゲーム販売 通販ショップの駿河屋

Twitter

仮面被り過ぎ@コンプレックス大佐
@Mask_Siva

  • 今日観てきた #ガルパン 最終章第1作は、音と戦車のグラフィックが洗練されていました。特にグラフィックかな。 ただ、キャラクターのトゥーンレンダリング箇所が増えたせいかちょっと違和感も多かったな。 ストーリーについては、序盤は無理やり感があるけど、終盤には納得する内容でしたね。
    about 17時間 ago
  • 宣言したし買うけどさ、高くない? なんだかんだ言って買うんだろうけどさ、、、 #スパロボ #スパロボX https://t.co/RqgAk50FPo
    about 18時間 ago
  • 知り合いから中毒性のある動画が回ってきたw ハートマン軍曹のガンダム士官学校 https://t.co/7VP8kEIC8B #sm19349867 #ニコニコ動画
    about 18時間 ago

BGM

勇者王ガオガイガー オリジナルサウンドトラック1
19 ファイナル・フュージョン -GGG交響楽団

↓の再生ボタンで再生できます
色々な楽曲を試聴したいなら
>>>こちら<<<

Nico Nico Community

Calendar

2017年12月
« 11月  
 12
3456789
10111213141516
17181920212223
24252627282930
31 

Archive

↓↓Please support me!↓↓

ブログランキング・にほんブログ村へ