Gobar

Gobar

Gobar

Gobar

Gobar

Minggu, 05 April 2015

Program Parsing Data sederhana pada C#

Assalammualaikum Wr.Wb


Welcome to my blog…… 


Dalam sebuah komunikasi protokol, terdapat data yang dikirim, dan biasanya data tersebut dikirim dalam satu paket. sehingga dalam proses pembacaan data tersebut terlebih dahulu harus di pisah-pisahkan sesuai dengan jenis datanya. Proses pemisahan tersebut dinamakan Parsing Data.

Kali ini saya akan berbagi cara momprogram parsing data menggunakan visual studio dengan bahasa C#. Pertama- tama siapkan dahulu Visual Studio atau Sharp Develop atau software sejenisnya.

sebelum mulai ke parsing data. kita harus mengetahui dulu fungsi yang akan kita gunakan yaitu sebagai berikut :

          Length : Untuk Mendapatkan jumlah karakter pada suatu string.
          Contoh : panjang = textbox1.text.Length;

          Indexof : Untuk mencari karakter atau beberapa karakter dalam suatu string.
          Contoh : index = textbox1.text.IndexOf(“abcde”);

          Substring : Untuk mengambil / mengcopy data dari suatu string.
          Contoh : data = textbox1.text.substring(index_awal, index_panjang);

setelah mengetahui beberapa fungsi diatas. kita dapat membuat aplikasinya. terlebih dahulu buka softwarenya dan buat sebuah project baru. bagi yang belum tahu bisa lihat pada postingan sebelumnya. lalu tambahkan komponen-komponen seperti dibawah ini :






kemudian klik kanan pada form kemudian klik view code. hal pertama yang harus kita lakukan adalah mendeklarasikan variable yang di gunakan.




Setelah itu, kita buat sebuah fungsi yang berisikan program parsing datanya.




Lalu tambahkan komponen timer dan untuk propertiesnya tidak usah diganti kecuali interval. lalu klik 2 kali pada timernya atau klik event timer_tick.




Setelah itu pada ProgressBar dan Label ( select keduanya ) lalu klik 2 kali dan tambahkan code ini untuk mengaktifkan timer ketika tombol di tekan.



kemudian kita akan coba buat. pada saat kita selesai mengetikkan inputan data dan menekan tombol enter maka program akan berkerja sama seperti jika kita mengklik tombol Proses. untuk membuatnya kita dapat menggunakan event keydown. pada textbox_Input pilih event keydown dan buat program seperti ini :



sampai di sini sebenarnya program sudah bisa di running tetapi akan saya tambahkan beberapa fungsi lagi pada MenuStrip untuk merubah tampilan dan lain-lain. Seperti dibawah ini :



Codingannya seperti ini :




Dibawah ini adalah codingan lengkapnya :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Program_Parsing_Data
{
    public partial class Form1 : Form
    {
        string Input, awal, akhir;

        public Form1()
        {
            InitializeComponent();

            //menginputkan tulisan pada textBox_Input saat tampilan pertama
            textBox_Input.ForeColor = Color.Silver;
            textBox_Input.Text = "Input Data";  
                       
        }

        void Proses()
        {
            Input = textBox_Input.Text;

            awal = Convert.ToString(textBox_awal.Text);  //menginput nilai awal protokol
            int panjang_awal = awal.Length;
            akhir = Convert.ToString(textBox_akhir.Text);  //menginput nilai akhir protokon
            int panjang_akhir = akhir.Length;

            if (panjang_awal == 0 || panjang_akhir == 0)
            {
                MessageBox.Show("Protokol tidak ditemukan", "Gobar Error System", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            else
            {
                //inisial awal dan akhir pada Protocol
                int protocol_awal = Input.IndexOf(awal); //awal
                int protocol_akhir = Input.LastIndexOf(akhir); //akhir

                int protocol = protocol_awal;
                int panjang_protocol = (protocol_akhir - protocol_awal) + panjang_akhir;

                int source = protocol_awal + panjang_awal;
                int panjang_source = 2;

                int destination = source + 2;
                int panjang_destination = 2;

                int hlen = destination + 2;
                int panjang_hlen = 5;

                int crc = protocol_akhir - 4;
                int panjang_crc = 4;

                int trailer = crc - 4;
                int panjang_trailer = 4;

                int data = hlen + 5;
                int panjang_data = trailer - hlen - 5;

                string Protocol = Input.Substring(protocol, panjang_protocol); //(int startindex, int length)
                textBox_Protocol.Text = Protocol;

                if ((panjang_awal + panjang_akhir + 17) > Protocol.Length)
                {
                    MessageBox.Show("Data protokol tidak Lengkap", "Gobar Error System", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                else
                {
                    string Source = Input.Substring(source, panjang_source);
                    string Destinatoin = Input.Substring(destination, panjang_destination);
                    string HLEN = Input.Substring(hlen, panjang_hlen);
                    string Data = Input.Substring(data, panjang_data);
                    string Trailer = Input.Substring(trailer, panjang_trailer);
                    string CRC = Input.Substring(crc, panjang_crc);

                    string[] Tabel = new string[6] { Source, Destinatoin, HLEN, Data, Trailer, CRC };
                    Tabel = new string[] { Source, Destinatoin, HLEN, Data, Trailer, CRC };
                    DataGridView.Rows.Add(Tabel);
                    DataGridView.FirstDisplayedScrollingRowIndex = DataGridView.RowCount - 1;
                }
            }

        }

        private void progressBar_Click(object sender, EventArgs e)  //jika tombol Proses di klik
        {
            timer1.Start();  //mengaktifkan waktu
        }

        private void textBox_Input_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyData == Keys.Enter)  //jika menekan Enter setelah menginput data
            {
                timer1.Start();
            }
        }

        private void timer1_Tick(object sender, EventArgs e)
        {         
            if (progressBar.Value < 100)
            {
                progressBar.Value += 1;
            }

            if (progressBar.Value == 100)
            {
                timer1.Stop();              //Menonaktifkan timer1
                progressBar.Value = 0;     //mereset nilai progressBar
                textBox_Input.BackColor = Color.Orange;
                textBox_Input.ForeColor = Color.White;               

                Proses();
            }
        }

        private void textBox_Input_Click(object sender, EventArgs e)
        {
            textBox_Input.BackColor = Color.WhiteSmoke;
            textBox_Input.ForeColor = Color.Blue;

            if (textBox_Input.Text == "Input Data")
            {
                textBox_Input.Text = "";
            }
        }

        private void tabelToolStripMenuItem_Click(object sender, EventArgs e)
        {
            for (int panjang = this.Height; panjang < 450; panjang++)
                {
                    this.Height = panjang;
                }
        }

        private void sembunyikanTabelToolStripMenuItem_Click(object sender, EventArgs e)
        {
            for (int panjang = this.Height; panjang > 250; panjang--)
            {
                this.Height = panjang;
            }
        }

        private void fileToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Close();
        }

    }
   
}


Jika program dijalankan, maka akan tampilan seperti berikut :






Misalnya data yang diterima dari internet sebagai berikut :

*&(ikh)(abcde304900015halo apa kabar?okeh5986edcbaio test*0iou

Masukan pada bagian Input, seperti dibawah ini lalu tekan tombol Prosses :






Baiklah…,, Demikian sedeikit penjelasan yang dapat saya sampaikan, jika ada kesalahan saya mohon dimaafkan. semoga ini bermanfaat :)

Untuk lebih jelasnya, silahkan klik video tutorial dibawah ini :

https://www.youtube.com/watch?v=pq7V-wQTRT4&feature=youtu.be


Nantikan terus postingan-postingan saya selanjutnya di 


Wassalammualaikum Wr.Wb




Terima Kasih






Sabtu, 04 April 2015

Microsoft Visual Studio 2010 Express Registration Key





Welcome to my blog……





Coba masukan Password dibawah ini ke bagian Registration Key :

  • Microsoft Visual Basic 2010 Express Key : 2KQT8-HV27P-GTTV9-2WBVV-M7X96

  • Microsoft Visual C# 2010 Express Key : PQT8W-68YB2-MPY6C-9JV9X-42WJV

  • Microsoft Visual C++ 2010 Express Key : 6VPJ7-H3CXH-HBTPT-X4T74-3YVY7

  • Microsoft Visual Web Developer 2010 Express Key : CY8XP-83P66-WCF9D-G3P42-K2VG3



Saya harap password ini dapat bekerja dengan baik, jika ada kesalahan saya mohon dimaafkan. Semoga ini bermanfaat :)



Terima Kasih