はじめに
C#を使って開発している中で、.datファイルに保存されたバイナリデータを読み込みたい場面がありました。
今回は、C#で.datファイルの中身を取得する方法について勉強したので、
その基本的な実装方法をまとめておきます。
使用するクラス:BinaryReader
.datファイルは一般的にバイナリ形式で保存されているため、BinaryReaderを使って読み込むのが基本になります。
実装コード例
以下が、.datファイルを読み込んでfloat型のリストに格納する処理です。
// ファイルパスの設定
string datFilePath = "データファイルのフルパスをここに記入";
// データの読み込み
List<float> dataList = new List<float>();
using (FileStream fileStream = new FileStream(datFilePath, FileMode.Open, FileAccess.Read))
using (BinaryReader binaryReader = new BinaryReader(fileStream))
{
while (binaryReader.BaseStream.Position < binaryReader.BaseStream.Length)
{
float data = binaryReader.ReadSingle();
dataList.Add(data);
}
}
コードのポイント解説
FileStream:ファイルの読み込みストリームを作成BinaryReader:バイナリファイルの読み込みに特化したクラスReadSingle():1つのfloat(4バイト)を読み込みBaseStream.Position:現在の読み込み位置BaseStream.Length:ファイル全体の長さ
上記のようにして、.datファイルに格納された連続するfloat型の値を読み込むことができます。
読み込んだデータの活用例
私の場合、このように読み込んだデータを以下のように活用しています:
- CSVファイルに書き出して可視化する
- グラフに描画して波形やトレンドを確認する
- リアルタイム解析や判定処理に利用する
C#でデータの読み書き処理を組み合わせることで、
アナログ計測データやバイナリログファイルの活用がかなり便利になります。
まとめ
.datファイルのようなバイナリ形式データをC#で扱う場合は、BinaryReaderを用いて読み込む方法が基本です。
ポイントまとめ:
データのリスト化やCSV出力など、さまざまな展開が可能
.datファイルはバイナリ形式(float, intなど)で格納されていることが多い
BinaryReader.ReadSingle() でfloat値を1つずつ読み出せる
技術書の購入コストを抑えてスキルアップするなら

ここまで読んでいただきありがとうございます。最後に宣伝をさせてください。
プログラミングの技術書や参考書は、1冊3,000円〜5,000円するものも多く、出費がかさみがちです。Kindle Unlimitedであれば、月額980円で500万冊以上の書籍が読み放題となります。
気になる言語の入門書から、アルゴリズム、基本設計の専門書まで、手元のスマホやPCですぐに参照可能です。現在は「30日間の無料体験」や、対象者限定の「3か月499円プラン」なども実施されています。まずはご自身のアカウントでどのようなオファーが表示されるか確認してみてください。
