• ベストアンサー

C#でiniファイルを使う

初歩的な質問なのですが… sharpdevelopでC# .NETの勉強をしているのですが、 iniファイルに例えばフォームの位置や、 ユーザー設定項目を保存させて、その読み書きを したいのですが、調べてもなかなかヒットしません。 iniファイルを使う、というか、 要はユーザーが設定した内容を保持しておきたいだけなのです。 それをするためには、どのようにしたらよいのでしょうか。 簡単なサンプルコードなど教えていただけると助かるのですが、 このことについて解説してあるサイトの紹介などでもかまいません。 よろしくお願いします。

  • yo-ya
  • お礼率65% (145/221)

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

WindowsAPIを使用します。 #INIファイルは一応推奨されていない機能なので、 .NETではサポートされていません。よく使われますが(^^; http://ukamen.hp.infoseek.co.jp/Programming/iniFile/

参考URL:
http://ukamen.hp.infoseek.co.jp/Programming/iniFile/
yo-ya
質問者

お礼

ありがとうございました。 じっくり勉強したいと思います。

その他の回答 (2)

回答No.3

INIファイルを読み書きするには? http://www.atmarkit.co.jp/fdotnet/dotnettips/039inifile/inifile.html

参考URL:
http://www.atmarkit.co.jp/fdotnet/dotnettips/039inifile/inifile.html
yo-ya
質問者

お礼

ありがとうございました。 みなさんにいろいろな方法を提示していただけて よかったです。それぞれ、じっくり勉強したいと思います。

  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.2

>要はユーザーが設定した内容を保持しておきたいだけなのです。 もし、レジストリでもかまわなければ、参考URLを参照ください。

参考URL:
http://ukamen.hp.infoseek.co.jp/Programming1/Registry/
yo-ya
質問者

お礼

ありがとうございました。 レジストリもいやがってばかりいないで 勉強しておこうと思います。

関連するQ&A

  • INIファイルではなく、XMLを使うのですが。。。

    VB.NETでプログラムを作成しております シリアル通信の設定とオラクルのユーザー名パスを 現在 INIファイルで設定を保持してます [シリアル通信] ビット/秒= データビット= パリティ= ストップビット= フロー制御= [オラクル] ユーザー名= パスワード= 以上のような感じで INIファイルをもっているのですが。。 これをXMLファイルで 記述するとどのようになるのでしょうか? 教えて下さい

  • VC++でのiniファイルの読み書き

    今Visual Studio 6.0 Professional Editionを使用して開発を行っています。 そこでiniファイルの読み書きを行う必要があるのですが、ほんとに初心者でどのようにすればいいのかわかりません。 そこで皆さんの知恵をお借りしたいのですが、 サンプルプログラムや役に立つサイトなどを教えていただきたいのです。 やることとしてはiniファイルからデータを読む。 プログラム中のデータをiniファイルの特定のセクションのキーに書き込むです。 よろしくお願いします。

  • powershellとiniファイル

    ps1よりiniファイルを読み込むスクリプトを作成中です。 iniファイルには以下の記載をしています。 いわゆる連想配列です。 $info = @{} $info[0] = @{ host=testest1 ip=192.168.0.0 } $info[1] = [ host=testest2 ip=192.168.0.1 } 一方、ps1は以下の通り、コードを記述しています。 $INI_PATH = @(Split-Path $script:myInvocation.MyCommand.Path -Parent).Trim() $INI_FILE = "ini_test2.ini" $INI_FULLNAME = $INI_PATH + "\" + $INI_FILE $PARAMETER = @{} Get-Content $INI_FULLNAME | %{$PARAMETER += ConvertFrom-StringData $_} $host_info = $PARAMETER.info[0] #値格納 $host_info いざ、実行すると、 「ConvertFrom-StringData : データ行 '}' の形式が '名前=値' ではありません。」、「項目は既に追加されています。」とのエラーが出ます。 どのように変えればエラーがなくなりますでしょうか。 Powershellの初歩的な質問で申し訳ないのですが、ご回答をよろしくお願いいたします。

  • php.iniファイルの設定について

    素人の質問ですがよろしくお願いいたします。 参考書等を読んで、勉強しているのですが、メールフォームを作るときなどはphp.iniファイルの設定をしないといけないのはわかったのですが、これを実際のサーバにアップするときはphp.iniファイル等はどうすればいいのでしょうか? 質問自体がおかしかったらすいませn。どなたかよろしくお願いいたします。 あと\rの復帰というのはどのような命令なのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • ファイル内でのini_set

    ファイル内でのini_setの挙動について意味がわかりません。 エラー表示を制御させたくphpファイル内にini_set('display_errors', 0);としました。 echo ini_get('display_errors');//1と表示 ini_set('display_errors', 0); //$str = "aaa" echo ini_get('display_errors');//0と表示 exit; この状態で$strのコメントを外すとなぜかエラーがきっちり表示されてしまいます。 調べたところファイル内で設定できないものもあるがこの項目についてはファイル内で 制御できるとありました。 .htaccessではinclude_pathの設定をしているだけでdisplay_errorsの設定はしておらず全く 原因がわかりません・・・ちなみに.htaccessでphp_value display_errors Offを入れると エラーは表示されません。 環境はphp5でxamppを利用しております。 ローカルか運用サーバーかでそれぞれの制御を変えたくできればphp内で行いたいのですが どうすればいいものでしょうか?

    • 締切済み
    • PHP
  • INIファイル情報読み込み 方法 について

    見て頂きありがとう御座います 今 開発言語を VB データベースをAccessで作っており 最初の段階で躓いてしまい 皆様のお知恵を借りたいと思い登校させて頂きます ICカード開発キットを使いデータ入力をしようと考えているのですが ポートを設定しないと 動かない状態です デモプロブラムを見る限り INIファイルにポート設定されている ので そのINIファイルを読み込むVB上のコードをアドバイスいただけると 助かります  宜しくお願いします

  • 【VB2005】txtファイルからINIファイルみたいに読込む

    googleや、ITプロのサイトなどで VB2005のINIファイルもしくはXmlの読書きが理解できずに、 とりあえず、txtファイルから設定の読込みをしたいと考えてます。 ↓Text.txt↓の内容 [Mode] Mode=1 [SYSTEM] Menu1=登録処理 Menu2=保存処理 ・各、=(イコール)のあとの値を変数に代入したいと思ってます。  状況と、したいことが伝わりにくいかも知れませんが  ご口授お願いします。

  • INIファイルの改ざんを検出する

    自作でソフトウェアを作成しているのですが、その中でINIファイルに設定を書き出しています。 しかし、実体のあるテキストファイル(INI)で保存すると、簡単に改ざん(ユーザーの意図していない悪質な改ざん)をされてしまうことになります。 ソフトウェアの性質上、INIファイルに保存されているデータをevalすることがあるのですが、 もしそこが改ざんされていれば大変なことになりかねません。 そこで、INIファイルの改ざんを検出、または改ざんされないようにしたいのですが、どのような手段があるでしょうか。 自分で考えたのは、 アプリケーション終了時に ・INIファイルのMD5ハッシュを取得、それを記憶。 ・INIファイルのタイムスタンプを記憶。 をして、次回起動時に現在のINIファイルのMD5,タイムスタンプと比較して、改ざんを検出するというものです。 ですが、この方法だと結局はMD5のハッシュ値やタイムスタンプをどこかに保存しておかねばならず、 そうなるとそれらも改ざんされる恐れがあって結局意味を成さなく成ってしまいます。 どうすると、一番効率的で安全でしょうか。 レジストリも結局は改ざんされてしまいます。 そもそも、完全に改ざんを防ぐことはできないだろうと思っていますので、 出来るだけ改ざんされにくい方法、または改ざんを検出しやすい方法をご教授いただければと思います。 様々な意見を頂きたいので、既に回答が出ている場合も追加で回答頂けると幸いです。

  • 違うアカウントで、ファイルの上書きについて

    異なるリナックスアカウントで、winscpでログインして、同じファイルを変更、上書きアップロードをしようとしています。 その場合、二つのユーザーに対して同じグループを割り当て、ファイルのパーミッションを、同グループにたいして、読み書きの権限を与えるように設定するところまで設定しました。 これで、ファイルの上書きは、二つのユーザーでできるようになったのですが、タイムスタンプが保持できないエラーが表示されてしまいます。 これを解消する方法はなにかありませんか? 知っていたら、是非おしえてください。

  • php.iniってどこにある??

    こんにちは。 いつも皆さんの質問や回答を参考にスキルアップを目指しております。 ちょっと分からない点にぶち当たりましたのでどなたか教えてください。 当方、Fedora8にてWebサーバーを構築しております。 構成は下記の通りです。 Fedora8 Apache2.2.9 PHP4.4.9 PostgreSQL8.2.11 現在、正常に稼働しているように見えるのですが、phpinfo()を見てみると 確かに【Configuration File (php.ini) Path】の値が 【/usr/local/php-4.4.9/lib】となっているのですが、そこのディレクトリを 見てもphp.iniが見当たりません。 find / -name php.ini にてファイルを探してみたら【/etc/php.ini】と表示されたので 開いて編集し、httpdの再起動をしてみたのですが、設定の変更が 反映されません。 いったいどこの設定ファイルを読み込んでいるのでしょうか? 設定ファイルが指定のパスに見つからない場合、デフォルトで読み込む ファイルがあるのでしょうか? 参考までに変更しようとした項目は下記です。 session.use_trans_sid を off から on へ変更したいのですが、 0を1に変えても変化がありませんでした。 どうかよろしくお願いいします。

専門家に質問してみよう