0Pricing
Ruby Academy · Pelajaran

Membaca dan Menulis JSON

JSON.parse dan generate.

Membaca dan Menulis JSON adalah pelajaran Ruby Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ruby Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ruby Academy mencakup 4 pelajaran total.

Apa Itu JSON?

JSON (Notasi Objek JavaScript) adalah format teks ringan untuk pertukaran data. Format ini dapat dipetakan dengan baik ke struktur pemetaan dan larik Ruby.

Muat pustaka json untuk menggunakannya.

require 'json'
data = { name: 'Ruby', year: 1995 }
puts(JSON.generate(data))

Mengurai Teks JSON

JSON.parse mengubah teks JSON menjadi objek Ruby: objek menjadi struktur pemetaan, sedangkan larik menjadi larik.

require 'json'
text = '{"name":"Ruby","year":1995}'
h = JSON.parse(text)
puts(h['name'])
puts(h['year'])

Menghasilkan Teks JSON

JSON.generate (atau to_json pada objek) mengonversi data Ruby menjadi teks JSON ringkas.

require 'json'
arr = [1, 2, { ok: true }]
puts(arr.to_json)

Pencetakan Rapi

JSON.pretty_generate menghasilkan JSON berindentasi yang mudah dibaca manusia, ideal untuk berkas konfigurasi dan proses penelusuran kesalahan.

require 'json'
data = { name: 'Ruby', tags: ['fun', 'oop'] }
puts(JSON.pretty_generate(data))

Kunci Simbol saat Penguraian

Secara bawaan, kunci yang diurai adalah teks. Berikan symbolize_names: true untuk memperoleh kunci simbol.

require 'json'
h = JSON.parse('{"name":"Ruby"}', symbolize_names: true)
puts(h[:name])

Struktur Bertingkat

JSON mendukung struktur bertingkat. Penguraian membangun kembali seluruh pohon struktur pemetaan dan larik.

require 'json'
text = '{"user":{"name":"Ada","roles":["admin","dev"]}}'
h = JSON.parse(text)
puts(h['user']['name'])
puts(h['user']['roles'][1])

Pemetaan Jenis

Jenis JSON dipetakan ke Ruby:

  • objek → struktur pemetaan, larik → larik
  • teks → teks, angka → bilangan bulat/bilangan pecahan
  • benar/salah → benar/salah, kosong → nihil
require 'json'
h = JSON.parse('{"a":1,"b":1.5,"c":null,"d":true}')
puts(h['a'].class)
puts(h['c'].inspect)

Menulis JSON ke Berkas

Gabungkan pretty_generate dengan File.write untuk menyimpan data ke disk.

require 'json'
require 'tmpdir'
path = File.join(Dir.tmpdir, 'data.json')
File.write(path, JSON.pretty_generate({ ok: true }))
puts(File.read(path))

Membaca JSON dari Berkas

Baca isi berkas, lalu uraikan dalam satu langkah.

require 'json'
require 'tmpdir'
path = File.join(Dir.tmpdir, 'cfg.json')
File.write(path, '{"port":8081}')
cfg = JSON.parse(File.read(path))
puts(cfg['port'])

Menangani Kesalahan Penguraian

JSON yang tidak valid memunculkan JSON::ParserError. Tangkap kesalahan tersebut untuk menangani masukan yang buruk dengan baik.

require 'json'
begin
  JSON.parse('{not valid}')
rescue JSON::ParserError => e
  puts 'Invalid JSON caught'
end

Siklus Bolak-Balik

Menghasilkan lalu mengurai seharusnya mengembalikan data yang setara, sebagai pemeriksaan kewajaran yang berguna.

require 'json'
original = { id: 7, tags: ['a', 'b'] }
back = JSON.parse(original.to_json, symbolize_names: true)
puts(back == original)

Pemeriksaan Singkat

Opsi mana yang membuat JSON.parse mengembalikan kunci simbol, bukan kunci teks?

Ringkasan: Membaca dan Menulis JSON

Anda dapat memindahkan data ke dalam dan ke luar JSON:

  • JSON.parse mengubah teks menjadi objek Ruby
  • to_json / JSON.generate menghasilkan JSON ringkas
  • pretty_generate menghasilkan keluaran yang mudah dibaca
  • symbolize_names: true menghasilkan kunci simbol
  • Tangkap JSON::ParserError saat masukan tidak valid
require 'json'
puts(JSON.parse('[1,2,3]').sum)

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Membaca dan Menulis JSON” gratis?

Ya — teks lengkap “Membaca dan Menulis JSON” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ruby Academy, upgrade ke CoddyKit PRO. Kursus Ruby Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Membaca dan Menulis JSON”?

JSON.parse dan generate. Kamu berlatih Ruby Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Ruby Academy?

Tidak diperlukan pengalaman sebelumnya. Ruby Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Membaca dan Menulis JSON” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Ruby Academy ini?

Ya. Setiap pelajaran Ruby Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Membaca dan Menulis JSON
  2. Bekerja dengan CSV
  3. Konfigurasi YAML
  4. Memilih Format
← Kembali ke Ruby Academy