Minggu, 05 April 2015

Belajar Parsing Data C#

Hallo, Kembali lagi dengan saya Akhbar Ferdeansyah. Dalam kesempatan kali ini saya akan sharing tentang Parsi C#.

Tujuannya sebagai berikut ;
- Mempelajari pemakaian Strings di SharpDevelop
- Mengetahui kegunaan Strings di SharpDevelop
- Dapat mengunakan Strings dalam aplikasi windows
  sederhana

Strings adalah kumpulan karakter yang dianggap sebagai satu buah
unit tersendiri. Karakter ini dapat berupa huruf besar, huruf kecil, angka
maupun karakter spesial seperti +, &, $, # dll. String adalah object dari
class String di namespace System. Kita menuliskan string biasanya
diletakkan dalam tanda petik.
"Ini adalah string!"
Untuk inisialisasi dan deklarasi kita tinggal menggunakan,
string strColor = "blue";
Sama seperti array, string dapat mengetahui jumlah karakter pada
dirinya dengan menggunakan property Length. Karena sebenarnya
string adalah array dari karakter. Jadi kita dapat menggunakan format
array untuk melihat indeks pada string. Misalnya kita ingin tahu huruf
pertama, maka tinggal gunakan strColor[0].
Pada praktikum kali ini kita akan mencoba memanipulasi string dengan
berbagai method yang telah disediakan di .NET.

Berikut adalah desainnya ;


Beberapa method yang ada (jika diimplementasikan pada strText = "My
String"):



Apabila kita ingin mencari posisi indeks suatu string di dalam string,
kita dapat menggunakan method IndexOf. Misalnya kita punya str =
"My string is a long string", maka:


Pada beberapa aplikasi, kadang-kadang kita butuh untuk meng-copy
karakter atau kata atau kalimat dalam sebuah string yang panjang.
String yang kita cari dalam sebuah string yang panjang disebut
substring (bagian dari string). Oleh karena itu, method yang kita
gunakan dinamakan juga dengan Substring.


Kita juga dapat mengganti kemunculan kata dalam suatu string dengan
method Replace.


Beberapa method lain yang berguna, misalnya diaplikasikan pada str =
"My String" :




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 parsing_praktikum
{
    public partial class Form1 : Form
    {
        string str = "My String";
        string str2 = "My String is a long string";
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            textBox1.Text = "My String";
            textBox2.Text = "My String";
            textBox3.Text = "My STRING";
            textBox4.Text = "My String";
            textBox5.Text = "My String is a long string";
            textBox6.Text = "My String is a long string";
            textBox7.Text = "My String is a long string";
            textBox8.Text = "My String";
            textBox9.Text = "My String is a long string";
            textBox10.Text="My String";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(textBox11.Text);
            string y = Convert.ToString(textBox17.Text);

            string insert = str.Insert(a, y);
            textBox24.Text = insert;
        }

        private void button2_Click(object sender, EventArgs e)
        {
            int a = Convert.ToInt32(textBox12.Text);
            int y = Convert.ToInt32(textBox18.Text);

            string remove = str.Remove(a, y);
            textBox25.Text = remove;
        }

        private void button3_Click(object sender, EventArgs e)
        {
            string a = Convert.ToString(textBox3.Text);

            string tolower = str.ToLower();
            textBox26.Text = tolower;
        }

        private void button4_Click(object sender, EventArgs e)
        {
            string a = Convert.ToString(textBox4.Text);

            string toupper = str.ToUpper();
            textBox27.Text = toupper;
        }

        private void button5_Click(object sender, EventArgs e)
        {
            string a = Convert.ToString(textBox13.Text);
            int y = Convert.ToInt32(textBox19.Text);

            int indexof = str2.IndexOf(a, y);
            textBox28.Text = str2.Substring(indexof);
        }

        private void button6_Click(object sender, EventArgs e)
        {
            string a = Convert.ToString(textBox14.Text);
            int y = Convert.ToInt32(textBox20.Text);

            int lastindexof = str2.LastIndexOf(a, y);
            textBox29.Text = str2.Substring(lastindexof);
        }

        private void button7_Click(object sender, EventArgs e)
        {
            string a = Convert.ToString(textBox15.Text);
            string y = Convert.ToString(textBox21.Text);

            string replace = str2.Replace(a, y);
            textBox30.Text = replace;
        }

        private void button8_Click(object sender, EventArgs e)
        {
          string[] a = { "My", "String" };
          string y = Convert.ToString(textBox22.Text);

           string join = string.Join(y, a);
           textBox31.Text = join;
        }

        private void button9_Click(object sender, EventArgs e)
        {
            string y = Convert.ToString(textBox23.Text);

            string[] z = str.Split();
            textBox32.Text = string.Join(y, z);
        }

        private void button10_Click(object sender, EventArgs e)
        {
            //string trim = str.Trim();
            //textBox33.Text = trim;

            string test10 = str.Trim();
            textBox33.Text = test10;
        }

        private void button11_Click(object sender, EventArgs e)
        {
            textBox24.Text = "";
            textBox25.Text = "";
            textBox26.Text = "";
            textBox27.Text = "";
            textBox28.Text = "";
            textBox29.Text = "";
            textBox30.Text = "";
            textBox31.Text = "";
            textBox32.Text = "";
            textBox33.Text = "";
        }
    }
}


sekian informasi yang bisa saya sampaikan, kurang lebihnya mohon maaf :)



Simple Parsing Data C#

Hallo, Kembali lagi dengan saya Akhbar Ferdeansyah. Dalam kesempatan kali saya ingin menjelaskan Simple Parsing Data C#.

Protocol komunikasi di internet sangat bergantung pada format text. Ketika anda melakukan browsing ke google.com, maka yang terjadi adalah pertukaran string text terus-menerus antara router-router sampai dengan server goole.

Sebagai contoh adalah protocol TCP yang memiliki format sebagai berikut :


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 ;


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. Create new project ;


   Next ;


2. Mendesign tampilan form yang kita ingin buat ;


3. Program / isi codingnya ;

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 parsing
{
    public partial class Form1 : Form
    {
        string example;
        public Form1()
        {
            InitializeComponent();
        }

        private void Click_Click(object sender, EventArgs e)
        {
            Click.BackColor = Color.Red;

            example = labelExample.Text;

            int flag_awal = example.IndexOf("abcde");
            int flag_akhir = example.LastIndexOf("edcba");
            int sourceport = flag_awal + 5;
            int destinationport = sourceport + 2;
            int hlen = destinationport + 2; 
            int crc = flag_akhir - 4;
            int trailer = crc - 4;

            Protocol.Text = example.Substring(flag_awal, flag_akhir + 5 - flag_awal);
            SourcePort.Text = example.Substring(sourceport, 2);
            DestinationPort.Text = example.Substring(destinationport, 2);
            HLEN.Text = example.Substring(hlen, 5);
            Data.Text=example.Substring(hlen+5,trailer-hlen-5);
            Trailer.Text = example.Substring(trailer, 4);
            CRC.Text = example.Substring(crc, 4);     

        }

        private void Clear_Click(object sender, EventArgs e)
        {
            Click.BackColor = Color.Silver;
            Action<Control.ControlCollection> func = null;

            func = (controls) =>
            {
                foreach (Control control in controls)

                    if (control is TextBox)
                    {
                        (control as TextBox).Clear();
                    }
                    else
                    {
                        func(control.Controls);
                    }
            };

            func(Controls);
        }

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

4. Jalankan Aplikasinya ;



Berikut ini tutorial youtubenya ;