hai guys, laras mau sharing lagi nih. kali ini soal tugas laras.. yaitu parsing data tentunya memakai strings :) laras kasih tau ni ya protocol komunikasi di internet itu sangat bergantung pada format teks loh guys. Ketika temen-temen melakukan browsing ke google.com, maka yang terjadi adalah pertukaran string teks terus-menerus antara router-router sampai dengan server google. wuhuuuuuu panjang sangat prosedurnya :D
Sebagai contoh adalah protokol 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.
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 parsingdata
{
public partial class Form1 : Form
{
string contoh;
private int sourceport = 2, destinationport = 2, hlen = 5, crc = 4, data = 15, trailer = 4, index;
int z;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
z = 1;
button1.BackColor = Color.Red;
button2.BackColor = Color.White;
button3.BackColor = Color.White;
contoh = label2.Text;
int awal = contoh.IndexOf("abcde");
int akhir = contoh.LastIndexOf("edcba");
textBox1.Text = contoh.Substring(awal, akhir);
if (z == 1)
{
button1.BackColor = Color.White;
button2.BackColor = Color.Red;
button3.BackColor = Color.White;
textBox3.Text = contoh.Substring(13);
textBox4.Text = contoh.Substring(15);
textBox5.Text = contoh.Substring(22);
textBox8.Text = contoh.Substring(17);
textBox7.Text = contoh.Substring(37);
textBox6.Text = contoh.Substring(41);
}
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
System.Diagnostics.Process.Start(e.Link.LinkData.ToString());
}
}
}
sekian yaa sharingnya :) terimakasih semoga bermanfaat :)
wassalamualaikum Wr.Wb
Mbak konfirmasi akun facebook saya ya :)
BalasHapusfacebook.com/l.zul.fakar
maaf, baru dibalas. sudah ya mas :)
BalasHapus