
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは。
確かに、テキストファイルをバイナリで扱うことはありますね。どうも何のためにしているか分からないので思ったように、回答が付けられません。あくまでも、一般的な使い方を示します。
私も、テキストファイルでバイナリにすることは良くありますが、それを保存というのはまた別問題です。
例えば、Unicode(UTF-16) BOM の場合に、バイナリで扱います。
Sub BinaryInput()
Dim Fno As Integer
Dim Fname As String
Dim bufbyt() As Byte
Dim i As Long
Fname = "UTF16LE.txt" 'ファイル名"
Fno = FreeFile()
If FileLen(Fname) = 0 Then Exit Sub
Open Fname For Binary Access Read As #Fno
bufbyt = InputB(LOF(Fno), #Fno)
For i = 0 To 3
buf = buf & Hex(bufbyt(i))
Next i
If buf Like "FFFE*" Then
MsgBox "Unicode BOM付き", vbInformation
End If
End Sub
以下は、ZIP圧縮の場合
Sub TestZip()
Dim Fname As String
Dim Fno As Integer
Dim buf As String
Dim bufbyt() As Byte
Dim i As Long
Fname = "EDE1D300" '←Excelの残骸ファイル
Fno = FreeFile()
Open Fname For Binary Access Read As #Fno
bufbyt = InputB(LOF(Fno), #Fno)
Close #Fno
For i = 0 To 10 Step 1
buf = buf & Chr(Val(bufbyt(i)))
If buf = "PK" Then MsgBox "圧縮ファイルです。", vbInfomation: Exit For
Next
End Sub
逆に
Open Fname For Binary Access Write As #FNo
というものもありますが、セットで使ったことはありません。
Open Fname1 For Binary Access Read As #FNo1
Open Fname2 For Binary Access Write As #FNo2
で開くなら1行の文字列をD$にできるのかがネックです。
Open Fname1 For Input As #FNo1
Open Fname2 For output As #FNo2
で開くならバイナリーの入った行をそのままそっくりそのままコピーすることです。
そのときの関数は
Input(1, #FNo1)
InputB(1,#FNo.1)
だと思いますが・・・。
確認ですが、1行読み込んだ場合通常は読み込めますし、度のデータを別ファイルに書き込めます。
しかし時々読み込めない行があり調べるとLine Inputでは正常に読み込めません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ATTファイルってどうやって開け...
-
「VB.net」DataGridViewへの選...
-
パイソンでのテキストデータの...
-
テキストファイル固定長データ...
-
C#で大容量ファイルの一部編集
-
C言語のソースからコメントを抜...
-
C言語
-
ファイル変換
-
ストリームについて。
-
最新日付のテキストファイルを...
-
【Excel VBA】取り込んだファイ...
-
accessでクエリをExcelにエクス...
-
CSVファイルの時刻の形式について
-
Thunderbird 受信メールからの...
-
0バイトのテキストファイル
-
コマンドプロンプトのテキスト...
-
VBAで、JPG写真の撮影日時を読...
-
C++.NET 2003 「空のドキュメ...
-
[C#]FTPでの複数のファイル...
-
egwordファイルをWin上で開きたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ATTファイルってどうやって開け...
-
テキストファイルの一部分を抽...
-
テキストファイル固定長データ...
-
テキストファイルの特定行の削...
-
Excel VBAが徐々に遅くなる
-
VB(VBA)で、バイナリデータを使...
-
既存のテキストファイルを開く方法
-
WORDのVBAで差し込み印刷時、デ...
-
ファイル変換
-
C言語のソースからコメントを抜...
-
Zbarというソフトについて
-
C#テキストファイルから1バイト...
-
VBA。開いているテキストファイ...
-
C言語でテキストファイルをバイ...
-
テキストファイル内容の、16進...
-
フォーム無しでアプリを作成す...
-
[VB.NET] 処理の高速化を行いた...
-
VBSでテキストファイルの2行目...
-
テキストファイル(英語&日本...
-
StreamReaderで読み込んだファ...
おすすめ情報