
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で質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- C言語・C++・C# c言語の問題です 2 2023/07/21 10:51
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- C言語・C++・C# pythonのファイルの並びでの読み込みとリストについて 4 2022/04/13 03:52
- Perl Perlで特定文字列から特定文字列までを抜き出したい 4 2022/04/02 14:24
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- C言語・C++・C# C言語の質問です。バイナリ形式で保存されたWindows Bitmap形式の画像ファイルを読み込み、 3 2023/07/19 14:58
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- C言語・C++・C# pythonで外部のファイルを読み込む際のエラー 2 2022/04/12 19:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[VB.NET] 処理の高速化を行いた...
-
秀丸エディタ
-
ATTファイルってどうやって開け...
-
RGBデータからBMP画像へ
-
テキストファイル内容の、16進...
-
エクセルVBAでメールの自動作成...
-
テキストファイルの一部分を抽...
-
VBscriptでWebサイトから取得し...
-
WORDのVBAで差し込み印刷時、デ...
-
テキストファイルを読んで、Exc...
-
テキストファイル(英語&日本...
-
VBSでテキストファイルの2行目...
-
メールの添付ファイル
-
テキストファイル固定長データ...
-
C言語のソースからコメントを抜...
-
バイナリデータの中からMidのよ...
-
STM32 Nucleo-F446REでデータを...
-
Javaのプロパティファイルの文...
-
ファイル操作について。
-
Excel+VBAでフランス語を扱いた...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ATTファイルってどうやって開け...
-
テキストファイルの一部分を抽...
-
既存のテキストファイルを開く方法
-
VB(VBA)で、バイナリデータを使...
-
テキストファイル固定長データ...
-
テキストファイル内容の、16進...
-
WORDのVBAで差し込み印刷時、デ...
-
VBSでテキストファイルの2行目...
-
Excel VBAが徐々に遅くなる
-
StreamReaderで読み込んだファ...
-
ファイル変換
-
[VB.NET] 処理の高速化を行いた...
-
テキストファイルをSQLServerデ...
-
TXTファイルデーターをEX...
-
バイナリファイルの区別
-
Zbarというソフトについて
-
テキストファイルの特定行の削...
-
バイナリデータの中からMidのよ...
-
エクセルVBAでメールの自動作成...
-
UTF-8とASCIIコードにおける互...
おすすめ情報