Minggu, 05 April 2015

Simple Parsing Data




Berikut adalah tutorial  Program C# untuk pembuatan sebuah aplikasi parsing data:
Perintah Soal adalah seperti berikut: 
Protocol komunikasi di internet sangat bergantung pada format teks. Ketika anda melakukan browsing ke google.com, maka yang terjadi adalah pertukaran string teks terus-menerus antara router-router sampai dengan server google.
Misalnya awal dari protokol ditandai dengan karakter “abcde”, akhir dari
satu paket protokol ditandai dengan flag “edcba”. Kemudian 2 byte
berikutnya menunjukkan source port, diikuti 2 byte destination address.
Lalu HLEN sebanyak 5 byte yang menunjukkan banyaknya data. Setelah itu data sebanyak HLEN. Terdapat trailer 4 byte, sebelum ditutup CRC 4 byte.

Buat program untuk memisah-misahkan satu paket protokol. Misalnya
data yang diterima dari internet sebagai berikut:
*&(ikh)(abcde304900015halo apa kabar?okeh5986edcbaio test*0iou

Program anda harus bisa mengambil satu paket protokol yang ditandai
dengan flag awal dan akhir protokol. Kemudian memisah-misahkan
source port, destination port, data dan trailer.
1. Membuat project form application yang baru (create new project)

2. Mendesign Form / tampilan


3. Program / isi coding nya
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Simpel Parsing Data
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        String data_masuk;
        Boolean time;
        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Enabled = true;             
        }       
        private void button2_Click(object sender, EventArgs e)
        {
            timer1.Enabled = false;
            timer2.Enabled = false;
            timer3.Enabled = false;
            timer4.Enabled = false;
            rectangleShape1.FillColor = Color.Transparent;
            rectangleShape2.FillColor = Color.Transparent;
            rectangleShape3.FillColor = Color.Transparent;
            rectangleShape4.FillColor = Color.Transparent;
            textBoxProtocol.Text = null;
            textBoxSourceport.Text = null;
            textBoxDestinationport.Text = null;
            textBoxHLEN.Text = null;
            textBoxData.Text = null;
            textBoxTrailer.Text = null;
            textBoxCRC.Text = null;
        }
        private void timer1_Tick(object sender, EventArgs e)
        {
            rectangleShape1.FillColor = Color.Black;
            timer2.Enabled = true;          
        }

        private void timer2_Tick(object sender, EventArgs e)
        {
            rectangleShape2.FillColor = Color.Black;
            timer3.Enabled = true;      
        }
        private void timer3_Tick(object sender, EventArgs e)
        {
            rectangleShape3.FillColor = Color.Black;           
            timer4.Enabled = true;
        }
        private void timer4_Tick(object sender, EventArgs e)
        {
            rectangleShape4.FillColor = Color.Black;
            timer1.Enabled = true;
            time = timer1.Enabled;
            if (time == true)
            {
                data_masuk = labeldata.Text;
                int kode_awal = data_masuk.IndexOf("abcde");
                int kode_akhir = data_masuk.LastIndexOf("edcba");
                int sourceport = kode_awal + 5;
                int destinationport = sourceport + 2;
                int hlen = destinationport + 2;
                int data = hlen + 5;
                int trailer = kode_akhir - 8;
                int crc = trailer + 4;

                textBoxProtocol.Text = data_masuk.Substring(kode_awal, kode_akhir - 3);
                textBoxSourceport.Text = data_masuk.Substring(sourceport, 2);
                textBoxDestinationport.Text = data_masuk.Substring(destinationport, 2);
                textBoxHLEN.Text = data_masuk.Substring(hlen, 5);
                textBoxData.Text = data_masuk.Substring(data, 15);
                textBoxTrailer.Text = data_masuk.Substring(trailer, 4);
                textBoxCRC.Text = data_masuk.Substring(crc, 4);
            }
        }
    }
}

Isikan program diatas pada form1.cs seperti pada gambar dibawah ini.

Lakukan Compile maka akan tampil seperti berikut:












Demikian tutorial program C# untuk aplikasi Simple Parsing Data /  (form application)
Silahkan klik link video tutorial
Terima kasih.

0 komentar:

Posting Komentar