[リストへもどる]
一括表示

投稿時間:2004/05/31(Mon) 23:01
投稿者名:ビン
Eメール:
URL :
タイトル:
BCD形式をバイナリーファイルへ
はじめまして。
BCD形式の時刻データが入っているファイルをバイナリーで読み込み、
データを編集した後に、新規でまたBCD形式でファイルに書き込みたいのですが、
うまく書き込みができません。Hexにするとデータの整合性がとれなくなり
困っています。なにか良い方法があったら教えてください。
お願いします。

投稿時間:2004/06/02(Wed) 14:48
投稿者名:Say
Eメール:
URL :
タイトル:
Re: BCD形式をバイナリーファイルへ
「BCD形式の時刻データ」というのは、
12:34:56  ならば連続する6bytesに

offset:+0 +1 +2 +3 +4 +5
data :01 02 03 04 05 06  (16進表記)

のように保持されているということでしょうか?

手っ取り早いのは、
例えばByte配列bytTime(0)〜bytTime(5)に取得し
strTime = ""
For i= 0 To 5
  strTime = strTime & Chr(Asc("1") + bytTime(i) - 1)
Next
とすれば"HHNNSS"型に文字列化できますから、あとはFormatなどで
日付型にするなどして編集すればいいかと。

保存時は逆の手順でByte配列に戻せばいいでしょう。

投稿時間:2004/06/09(Wed) 20:52
投稿者名:ビン
Eメール:
URL :
タイトル:
Re^2: BCD形式をバイナリーファイルへ
> 「BCD形式の時刻データ」というのは、
> 12:34:56  ならば連続する6bytesに
>
> offset:+0 +1 +2 +3 +4 +5
> data :01 02 03 04 05 06  (16進表記)
>
> のように保持されているということでしょうか?
>
> 手っ取り早いのは、
> 例えばByte配列bytTime(0)〜bytTime(5)に取得し
> strTime = ""
> For i= 0 To 5
>   strTime = strTime & Chr(Asc("1") + bytTime(i) - 1)
> Next
> とすれば"HHNNSS"型に文字列化できますから、あとはFormatなどで
> 日付型にするなどして編集すればいいかと。
>
> 保存時は逆の手順でByte配列に戻せばいいでしょう。

投稿時間:2004/06/09(Wed) 20:58
投稿者名:ビン
Eメール:
URL :
タイトル:
Re^3:
Sayさんありがとうございます。
さっそくやってみます。返信が遅れて申し訳ないです。