Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

Serialisasi dan Deserialisasi dalam C# dengan Contoh

Serialisasi &Deserialisasi di C#

Konsep Serialization dan deserialisasi digunakan setiap kali data yang berkaitan dengan objek harus dikirim dari satu aplikasi ke aplikasi lainnya. Serialisasi digunakan untuk mengekspor data aplikasi ke dalam file. Aplikasi tujuan kemudian menggunakan deserialisasi untuk mengekstrak data dari aplikasi untuk digunakan lebih lanjut.

Serialisasi adalah konsep di mana objek kelas C# ditulis atau diserialisasi ke file. Katakanlah Anda memiliki kelas C# yang disebut Tutorial. Dan kelas memiliki 2 properti ID dan nama Tutorial.

Serializing dapat digunakan untuk langsung menulis properti data kelas Tutorial ke file. Deserialisasi digunakan untuk membaca data dari file dan membuat objek Tutorial lagi.

Cara Membuat Serialisasi Objek di C#

Mari kita lihat contoh bagaimana kita bisa mencapainya.

Dalam contoh kami, kami akan melakukan langkah-langkah tingkat tinggi di bawah ini dalam kode

  1. Buat class bernama Tutorial yang memiliki 2 properti yaitu ID, dan Nama
  2. Kami kemudian akan membuat objek dari kelas dan menetapkan nilai "1" ke properti ID dan nilai ".Net" ke properti nama.
  3. Kami kemudian akan menggunakan serialisasi untuk membuat serial objek di atas ke file bernama Example.txt
  4. Terakhir, kita akan menggunakan deserialization untuk deserialize objek dari file dan menampilkan nilainya di Console.

Masukkan kode di bawah ini ke dalam file program.cs dari aplikasi konsol.

Langkah 1) Tambahkan kelas.
Langkah pertama adalah menambahkan kelas yang akan digunakan untuk serialisasi

Penjelasan Kode:-

  1. Kelas yang perlu dibuat serial harus memiliki atribut [Serializable]. Ini adalah kata kunci dalam C#. Kata kunci ini kemudian dilampirkan ke kelas Tutorial. Jika Anda tidak menyebutkan atribut ini, Anda akan mendapatkan kesalahan saat mencoba membuat serialisasi kelas.
  2. Selanjutnya adalah definisi kelas yang akan diserialisasikan. Di sini kita mendefinisikan kelas yang disebut "Tutorial" dan menyediakan 2 properti, satu adalah "ID" dan yang lainnya adalah "Nama".

Langkah 2) Buat objek.
Pada langkah ini, pertama kita akan membuat objek kelas Tutorial dan membuat serial ke file bernama Example.txt

Penjelasan Kode:-

  1. Pertama, kita membuat objek dari kelas Tutorial. Kami kemudian menetapkan nilai "1" ke ID dan ".net" ke properti nama.
  2. Kami kemudian menggunakan kelas formatter yang digunakan untuk membuat serial atau mengkonversi objek ke format biner. Data dalam file dalam serialisasi dilakukan dalam format biner. Selanjutnya, kita membuat objek file stream. Objek aliran file digunakan untuk membuka file Example.txt untuk tujuan penulisan. Kata kunci FileMode.Create dan FileMode.Write digunakan untuk secara khusus menyebutkan bahwa file harus dibuka untuk tujuan penulisan.
  3. Akhirnya, kami menggunakan metode Serialize untuk mentransfer data biner ke file. Kami kemudian menutup aliran, karena operasi tulis selesai.

Langkah 3) Gunakan deserialization.
Terakhir untuk memastikan bahwa data ada dalam file, kami menggunakan deserialisasi untuk menghapus objek dari file.

using System;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
  [Serializable]
  class Tutorial
  {
  public int ID;
  public String Name;
   static void Main(string[] args)
   {
    Tutorial obj = new Tutorial();
    obj.ID = 1;
    obj.Name = ".Net";

    IFormatter formatter = new BinaryFormatter();
    Stream stream = new FileStream(@"E:\ExampleNew.txt",FileMode.Create,FileAccess.Write);

    formatter.Serialize(stream, obj);
    stream.Close();

    stream = new FileStream(@"E:\ExampleNew.txt",FileMode.Open,FileAccess.Read);
    Tutorial objnew = (Tutorial)formatter.Deserialize(stream);

    Console.WriteLine(objnew.ID);
    Console.WriteLine(objnew.Name);

    Console.ReadKey();
  }
 }
}

Penjelasan Kode:-

  1. Kita membuat objek “stream” untuk membuka file Example.txt dalam mode read only.
  2. Kami kemudian menggunakan kelas formatter yang digunakan untuk deserialize objek, yang disimpan dalam file Example.txt. Objek yang dikembalikan disetel ke objek objnew.
  3. Terakhir, kami menampilkan properti objek "objnew" ke konsol menggunakan properti "ID" dan "nama".

Ketika kode di atas diatur, dan proyek dijalankan menggunakan Visual Studio, Anda akan mendapatkan output di bawah ini.

Keluaran:-

Anda dapat melihat dari output di atas bahwa nilai dari file telah dideserialisasi dengan benar dan ditampilkan di konsol.

Ringkasan

Serialisasi digunakan untuk menulis objek kelas ke file.

De-Serialization digunakan untuk memulihkan objek dari file.


Bahasa C

  1. C# Kelas dan Objek
  2. C# kelas abstrak dan metode
  3. C# Kelas Parsial dan Metode Parsial
  4. C# kelas dan metode tersegel
  5. Kelas File Java
  6. Operator di C++ dengan Contoh:Apa itu, Jenis dan Program
  7. Perbedaan antara Struktur dan Kelas:Dijelaskan dengan Contoh C++
  8. Tutorial Kelas Abstrak C# dengan Contoh:Apa itu Abstraksi?
  9. Java BufferedReader:Cara Membaca File di Java dengan Contoh
  10. type() dan isinstance() dengan Python dengan Contoh