Hexter

Cara Membuka dan Membaca File Biner di Mac

Anda punya file tanpa ekstensi yang berguna, atau yang tidak dikenali macOS, sebuah .bin, dump firmware, save game lama, sesuatu yang diekspor sebuah perangkat. Klik ganda dan entah tidak terjadi apa-apa, atau file itu terbuka di TextEdit sebagai dinding karakter rusak. Anda ingin tahu cara membuka file biner di Mac tanpa menebak-nebak dan tanpa membahayakan file itu sendiri.

Mengapa klik ganda tidak berhasil

macOS memutuskan cara membuka file berdasarkan ekstensinya dan, jika gagal, menebak tipenya. File biner, file yang menyimpan data mentah alih-alih teks, tidak memiliki ekstensi standar yang dikenali sistem, jadi macOS entah menolak membukanya atau menyerahkannya ke aplikasi apa pun yang menurutnya paling dekat. Biasanya itu TextEdit, yang mencoba mengurai byte sebagai teks dan menampilkan sebagian besar simbol yang tidak terbaca dengan sesekali kata sungguhan muncul di antaranya.

Efek kata-terbaca-di-tengah-derau itu bukan khayalan Anda. File biner sering berisi teks tersemat (path file, label, string versi) meskipun data di sekitarnya benar-benar biner. TextEdit merender semuanya sebagai teks, itulah sebabnya Anda mendapat tampilan setengah berantakan, setengah familier. Sebenarnya ia tidak menunjukkan apa pun yang berguna, dan jika Anda menyimpan dari TextEdit secara tidak sengaja, Anda bisa merusak file itu.

Yang sebenarnya Anda inginkan: tampilan hex

File biner hanyalah rangkaian byte, masing-masing adalah angka dari 0 hingga 255. Cara standar untuk melihatnya dengan aman adalah tampilan hex: setiap byte ditampilkan sebagai nilai heksadesimal dua karakter (00 hingga FF), dijajarkan dalam baris di samping kolom offset (di mana Anda berada dalam file) dan kolom teks (byte yang sama diinterpretasikan sebagai ASCII, untuk bagian yang bisa dibaca). Itulah yang diberikan hex editor, dan itulah satu-satunya tampilan yang menunjukkan isi sebenarnya tanpa menebak-nebak formatnya.

Tiga cara untuk mencapainya

Terminal, dengan xxd atau hexdump. macOS menyertakan keduanya. Jalankan xxd yourfile.bin | less dan Anda akan mendapatkan dump hex yang bisa digulir langsung di Terminal. Ini cepat dan selalu tersedia, tetapi bersifat baca-saja, tanpa pencarian, tanpa lompat-ke-offset, dan tanpa interpretasi atas apa yang Anda lihat selain hex mentah. Baik untuk mengintip cepat, canggung untuk hal yang lebih dari itu.

TextEdit atau editor teks lain. Jangan. Seperti di atas, ia mengurai byte sebagai teks, yang merupakan lensa yang salah untuk data biner, dan ada risiko nyata merusak file secara diam-diam jika tersimpan.

Hex editor khusus. Ini adalah alat yang tepat jika Anda melakukan lebih dari sekadar lirikan lima detik: menggulir file besar, mencari pola byte tertentu, melompat ke offset yang diketahui, atau memeriksa apa yang sebenarnya diwakili sepotong byte (angka, tanggal, warna, string dalam encoding berbeda). Hexter dibangun persis untuk ini. Ia membuka setiap file dalam mode baca-saja secara default, jadi melihat file biner yang tidak dikenal tidak membawa risiko mengubahnya. File terbuka seketika tanpa memandang ukuran, karena Hexter membaca byte sesuai permintaan alih-alih memuat seluruh file ke dalam memori.

Langkah demi langkah

  1. Buka file. Seret ke Hexter, atau gunakan File > Open. Tidak perlu menebak tipe file terlebih dahulu; Hexter membuka apa pun sebagai byte mentah.
  2. Baca tata letaknya. Kolom offset di kiri memberi tahu Anda di mana Anda berada dalam file. Grid hex di tengah menampilkan setiap byte sebagai dua karakter hex. Panel teks di kanan menampilkan byte yang sama sebagai ASCII, untuk bagian file mana pun yang berupa teks sungguhan.
  3. Lompat ke offset tertentu dengan ⌘J jika Anda sudah tahu di mana harus mencari, alih-alih menggulir.
  4. Pilih byte untuk menginspeksinya. Memilih rentang menunjukkan data itu diinterpretasikan sebagai tipe numerik berbeda (integer 8, 16, 32, atau 64-bit, bertanda atau tak bertanda, dalam urutan byte mana pun) di sidebar Inspector. Beginilah cara Anda mengetahui apakah empat byte adalah ukuran file, stempel waktu, atau sesuatu yang lain.
  5. Cari dengan ⌘F jika Anda mencari string atau urutan byte tertentu alih-alih menggulir manual.
  6. Aktifkan penyuntingan hanya jika Anda benar-benar perlu mengubah sesuatu. Hexter menjaga file tetap baca-saja hingga Anda secara eksplisit mengaktifkan penyuntingan, dan bahkan setelah itu, perubahan berada dalam lapisan patch yang bisa dibatalkan hingga Anda memilih untuk menyimpan. Tidak ada yang Anda lakukan saat hanya melihat yang bisa menyentuh file asli.

Jika ternyata file itu adalah format yang dikenali Hexter secara struktural, PNG, ZIP, Mach-O, WAV, atau SQLite, tab Analyze akan mengurai struktur sebenarnya (batas chunk, header, field) di samping byte mentah, jadi Anda mendapatkan lebih dari sekadar hex.

Itulah keseluruhan alurnya: buka, baca ketiga kolom, lompat atau cari untuk sampai ke tempat yang Anda butuhkan, dan inspeksi sebuah seleksi saat Anda perlu tahu apa arti sebenarnya dari rentetan byte tertentu. Tanpa menebak-nebak, dan tanpa apa pun yang berisiko sampai Anda mengizinkannya.