C# INIファイルの読み込み・書き込み

C#にてINIファイルの読み込み・書き込み方法を説明します。

INIファイルは、単純なテキストファイルなので、テキストエディタで編集することも出来ます。

自作のアプリケーションの設定ファイルなどにも使用することも出来ます。

ここでは、Win32APIを使用して読み書きする方法を記載します。

INIクラス IniFilesクラス を作成して、それを呼び出す方法で説明します。

INIファイル読み込み・書き込みクラス

KERNEL32.DLLを読み込み、APIをコールすることにより読み書きします。

呼び出し側

 

 

C# ランダムファイル

ランダムファイルをアクセスする方法を記載します

FileStreamによるアクセス

・FileStreamの場合byteで扱うので、その後の処理をするとき、byte[]をstructとうにメモリーコピーする必要が出てくる。

 

ランダムアクセス関数例

呼び出し側

・長さを固定するために構造体の書き方に工夫がいる、メモリ中では、速度を上げるために、バイト単位で確保するより、レジスタ単位で確保したほうが速度が速くなるため、コンパイラ等が最適な並びで確保するので、並び等を指定する必要が出てくる。のでMarshalAs、StructLayoutAttributeUnmanagedTypeで指定する。

・構造体から値を取り出す場合にはByte[]から文字列型に変換する必要が出たりする。

 

 

 

C# シーケンシャルファイル

C#にてシーケンシャル読み込み・書き込みの方法を説明します。

シーケンシャルファイルを読み書きするには、幾つかの方法がありますが、StreamReader ・ StreamWriter を使用する方法を記載します。

シーケンシャル読み込み

 

シーケンシャル書き込み