Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Arpri file in binario - frmApri file in binario.frm

frmApri file in binario.frm

Caricato da: Antometal
Scarica il programma completo

  1. Option Explicit
  2.  
  3. Private Function Binario(Num As Byte) As String
  4. Dim I As Integer
  5. Dim num1 As Integer
  6. Dim bin As String
  7. num1 = Num
  8.     Do While num1 > 0
  9.             If num1 \ 2 = num1 / 2 Then bin = bin & "0"
  10.             If num1 \ 2 <> num1 / 2 Then bin = bin & "1"
  11.         num1 = num1 \ 2
  12.     Loop
  13.     For I = Len(bin) To 7
  14.         bin = bin & "0"
  15.     Next I
  16. Binario = StrReverse(bin)
  17. End Function
  18.  
  19. Private Sub chkCarattere_Click()
  20.     If txtXcorso.Text <> "" Then Apri (txtXcorso)
  21. End Sub
  22.  
  23. Private Sub cmdApri_Click()
  24. CDialog.Filter = "Tutti i file (*.*)|*.*"
  25. CDialog.ShowOpen
  26. txtXcorso.Text = CDialog.FileName
  27. CDialog.FileName = ""
  28.     If txtXcorso.Text <> "" Then Apri (txtXcorso.Text)
  29. End Sub
  30.  
  31. Private Sub cmdAbout_Click()
  32. MsgBox "Il file viene convertito in binario, ma in realtà è esadecimale." & vbCrLf & "Infatti quendo il file in binario viene salvato è grande 10 o 16 volte il file d' origine", vbInformation, Me.Caption
  33. End Sub
  34.  
  35. Private Sub cmdSalva_Click()
  36. Dim I As Integer
  37. CDialog.Filter = "File di testo (*.txt)|*.txt"
  38. CDialog.ShowSave
  39. CDialog.FileName = ""
  40.     If CDialog.CancelError = True Then Exit Sub
  41. Open CDialog.FileName For Output As 1
  42.     For I = 0 To lstBinario.ListCount
  43.         Print #1, lstBinario.List(I)
  44.     Next I
  45. Close 1
  46. End Sub
  47.  
  48. Private Sub Apri(XCorso As String)
  49. Dim Bait As Byte
  50. Dim StringaBinaria As String
  51. lstBinario.Clear
  52. Open XCorso For Binary As 1
  53.     If LOF(1) > 32766 Then GoTo Errore
  54.     Do While EOF(1) = False
  55.         Get 1, , Bait
  56.         StringaBinaria = Binario(Bait)
  57.             If CBool(chkCarattere.Value) = True Then StringaBinaria = Binario(Bait) & " --> " & Chr(Bait)
  58.         lstBinario.AddItem StringaBinaria
  59.     Loop
  60. Close 1
  61. lstBinario.RemoveItem lstBinario.ListCount - 1
  62. Exit Sub
  63. Errore:
  64. MsgBox "Errore, le dimensioni del file " & XCorso & " sono superiori a 32.766 Byte", vbExclamation, Me.Caption
  65. Close 1
  66. End Sub