Gunakan alat konversi JSON pihak ketiga, alat konversi Alibaba Json FastJson1.2.7.
//www.vevb.com/softs/530842.html
Catatan: Saya tidak akan mengulangi impor paket toples, silakan merujuk ke Baidu untuk detailnya.
Kelas pengguna, tentukan dua properti, dan buat konstruktor, dapatkan dan setel metode
Pengguna kelas publik {nama pengguna string publik; // Sebutkan saldo ganda publik; // Jumlah Pengguna Publik () {super ();} Pengguna publik (String username, double balance) {super (); this.username = nama pengguna; this.balance = balance;} string publik getUserName () {return username;} public void setusername (string username) {this.userName = username;} public double getBalance () {return balance;} public void setBalance (double balance) {this.balance = balance; {return}Streaming byte untuk menyimpan data JSON ke file txt
Impor java.io.bufferedInputStream; impor java.io.bufferedoutputStream; impor java.io.file; impor java.io.fileinputStream; publikasi public, public, public, public, public, public, public, public, Impor LICPLON; Impor Java.Util.List; impor COM.UMPRABON; Impor Java.util.List; impor; void main (string [] args) {list <user> list = new arraylist <> (); list.add (pengguna baru ("zhang san", 100)); list.add (pengguna baru ("zhang si", 200)); list.add (pengguna baru ("zhang wu", 300)); File = File = File baru ("d:" zhang wu ", 300)); File = File = New File (" d: "zhang wu", 300)); File = File = New File (" // File Object FileOutputStream fos = null; bufferedOutputStream bos = null; coba {fos = FileOutputStream baru (file); bos = baru bufferedOutputStream (fos); string json = json.tojsonstring (daftar); // Konversi objek ke jsonbos.write (json.getbytes ("UTF-8")); // JSON String menulis ke file bos.flush (); System.out.println ("Penulisan data JSON selesai");} catch (Exception e) {e.printstacktrace ();} akhirnya {coba {fos.close (); bos.close ();} catch (exception e) {e.printStackRace ();}} // Baca konten file dan output {e.printStackRace ();}} // Baca konten file dan output {e.printStackRace ();}} // Baca file konten dan output {e.printspack = "; fis = null; bufferedInputStream bis = null; byte buff [] = byte baru [1024]; coba {fis = FileInputStream baru (file); bis = BufferedInputStream baru (fis); while (num = bis.read (buff))! =-1) {str+= new string (Buff); // Cetak string JSON yang membaca file} catch (Exception e) {e.printstacktrace ();} akhirnya {coba {fis.close (); bis.close ();} catch (pengecualian e) {e.printstacktrace ();}} // Konversi data JSON yang dibaca menjadi objek, dan output (); list = json.parseArray (str.trim (), user.class); // Data JSON baca memiliki spasi, dan metode trim menghapus untuk (pengguna obj: daftar) {System.out.println (obj.getUserName ()+"/t"+obj.getBalance ());}}}}Menyimpan data JSON ke file txt dalam aliran karakter
Impor java.io.bufferedReader; impor java.io.bufferedwriter; impor java.io.file; impor java.io.filereader; public laftonfon; public lafeoid; Impor public L lafe.util. main(String[] args){List<User> list=new ArrayList<>();list.add(new User("Zhang San",100));list.add(new User("Zhang Si", 200));list.add(new User("Zhang Wu", 300));File file=new File("D:/uselist.txt"); // file objek yang disimpan FileWriter fw = null; bufferedwriter bw = null; coba {fw = fileWriter baru (file); bw = new buferedwriter (fw); string json = json.tojsonstring (daftar); // konversi objek ke jsonbw.write (json); // json string write file bw.flush (); System.out.println ("Penulisan data JSON selesai");} catch (Exception e) {e.printStackTrace ();} akhirnya {coba {bw.close (); fw.close ();} catch (Exception e) {e.printStackRace ();}} // Baca konten file dan output {e.printStackRace ();}} // Baca file konten dan output {e.printStackRace (); fr = null; bufferedreader br = null; coba {fr = filereader baru (file); br = new buferedReader (fr); while ((s = br.readline ())! = null) {str+= s;} system.out.println (str); // Cetak string JSON yang membaca file} catch (Exception e) {e.printstacktrace ();} akhirnya {coba {br.close (); fr.close ();} catch (exception e) {e.printStackTrace ();} // Konversi data baca JSON ke objek dan output (output = jon. untuk (pengguna obj: daftar) {System.out.println (obj.getUserName ()+"/t"+obj.getalance ());}}}}Hasil Menjalankan:
Penulisan data JSON selesai [{"Balance": 100, "username": "Zhang San"}, {"Balance": 200, "nama pengguna": "Zhang Si"}, {"Balance": 300, "Nama Pengguna": "Zhang Wu"}] Zhang San 100.0 Zhang SI 200.0 Zhang Wu "} Zhang San 100.0 Zhang SI 200.0 Zhang Zhang" wu 300.PERTANYAAN: Mengapa Anda perlu mengonversi objek menjadi JSON dan kemudian menyimpannya? Mengapa tidak menyimpan objek langsung ke file? Apa manfaat menggunakan JSON?
Pertanyaan 12: Jika Anda menulis objek langsung ke dalam file, kode kacau akan terjadi dan Anda perlu mengonversi string JSON sebelum menyimpannya.
Tiga pertanyaan dan jawaban: Keuntungan JSON mudah ditransmisikan, lebih sedikit karakter yang berlebihan, dan mudah dikonversi dan dibaca.