Open files in binary format

Posted on 2004-08-27
Medium Priority
Last Modified: 2010-05-02
Does anyone have the code to open any file in binary format and code to open a file which has been converted to binary back to its original state

e.g. opening a text file in binary so it comes out as 0's and 1's then change that back to whatever was in the text file...

Thanx for your help
Question by:mad_psyso
  • 2

Expert Comment

ID: 11914474
I am not sure If I understood you properly, but here is the code to load file to byte array

Private Sub ReadBinary(FileName As String)
Dim FileName As String
Dim FN As Long
Dim arrData() As Byte
    FN = FreeFile
    Open FileName For Binary Access Read As #FN
    ReDim arrData(LOF(FN) - 1)

    Get #FN, , arrData()
    Close FN

End Sub

Author Comment

ID: 11914609
Open a file in binary format and display it in a textbox then in another textbox convert it from binary back to its original format

If i has a textfile which contained "HELLO" textbox1 should display
01001000 01000101 01001100 01001100 01001111
which is the binary format

Then in the next textbox it should convert
01001000 01000101 01001100 01001100 01001111
back to its real state which would be back to "HELLO"

Accepted Solution

mladenovicz earned 800 total points
ID: 11914728
Public Function BinaryToDecimal(Binary As String) As Long
    Dim n As Long
    Dim s As Integer
    For s = 1 To Len(Binary)
        n = n + (Mid(Binary, Len(Binary) - s + 1, 1) * (2 ^ (s - 1)))
    Next s
    BinaryToDecimal = n
End Function

Public Function DecimalToBinary(DecimalNum As Long) As String
    Dim tmp As String
    Dim n As Long
    n = DecimalNum
    tmp = Trim(Str(n Mod 2))
    n = n \ 2
    Do While n <> 0
        tmp = Trim(Str(n Mod 2)) & tmp
        n = n \ 2
    DecimalToBinary = tmp
End Function

Public Function StringToBinary(s As String) As String
Dim i As Integer
Dim R As String
    For i = 1 To Len(s)
        R = R & DecimalToBinary(Asc(Mid(s, i, 1))) & " "
    StringToBinary = R
End Function

'-- input string should be separated by spaces
Public Function BinaryToString(B As String) As String
Dim i As Integer
Dim Arr() As String
Dim R As String
    Arr = Split(B, " ")
    For i = LBound(Arr) To UBound(Arr)
        R = R & Chr(BinaryToDecimal(Arr(i)))
    BinaryToString = R
End Function

Featured Post

7 new features that'll make your work life better

It’s our mission to create a product that solves the huge challenges you face at work every day. In case you missed it, here are 7 delightful things we've added recently to monday to make it even more awesome.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Suggested Courses

600 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question