|
▼kein さん:
よくみれば、buf(i) は 1バイトコードで
0〜255までの範囲の数値なんですね
それなら、256種類の2進表記文字列を配列に作っておいて、
それを読み込んだバイト数の要素に置き換えればこれが一番
速いと思いますよ
Sub test2()
Dim inputFileName As String
Dim inputFn As Long
Dim buf() As Byte
Dim Bin_Str() As String
Dim i&
'0〜255バイト別2進表記配列
Dim Bin(0 To 255) As String
For i = 0 To 255
Bin(i) = kDec2Bin(i)
Next
inputFileName = "C:\data.ini"
inputFn = FreeFile
Open inputFileName For Binary As #inputFn
ReDim buf(1 To LOF(inputFn))
Get #inputFn, , buf
Close #inputFn
ReDim Bin_Str(1 To UBound(buf))
For i = 1 To UBound(buf)
Bin_Str(i) = Bin(buf(i))
Next
End Sub
----- 参考 Speed ---------
test(kDec2Bin) 133
toBin 89
Conv10to2 107
DecToBin 143
test2 8
|
|