Potrzebuje pomocy:)

Własne projekty oraz implementacje.

Moderator: xxSlayeRxx

Potrzebuje pomocy:)

Sponsor

Sponsor
 

Potrzebuje pomocy:)

Postprzez wysio_90 » Śr paź 26, 2011 9:42 am

Witam, mam program, który liczy bit parzystości o raz sumę modulo n danego pliku, wszystko mi już działa, ale mam problem jak zapisać ten plik po zmianach, które również wprowadzam w tym programie, chciałbym aby mój button5 był od zapisywania tego pliku po zmianach jakie wprowadzam, czy jest mi wstanie ktoś pomóc? z góry wielkie dzięki:)

a to mój kod:

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;
using System.IO;

namespace sieci
{
public partial class Form1 : Form
{
private List<byte> tab = new List<byte>(); //pomocnicza kolekcja
public Form1()
{
InitializeComponent();
}
public long bit_parzystosci(List<byte> plik) //obliczanie bitu parzystości
{
long licznik = 0;
for (int i = 0; i < plik.Count; i++)
{
byte maska = 1;
while (true)
{

if ((plik[i] & maska) != 0)
{
licznik++;
}
if (maska == 0x80)

break;
maska <<= 1;
}
}
long wynik = licznik % 2;
return wynik;
}
public long suma_modulo(List<byte> plik) //oblicznie sumy modulo
{
int w = int.Parse(textBox6.Text);
long modulo = 0;
for (int i = 0; i < plik.Count; i++)
{
modulo += plik[i];
modulo %= w; //modulo max
}
return modulo;
}
private void button2_Click(object sender, EventArgs e)
{
OpenFileDialog okno = new OpenFileDialog();
if (okno.ShowDialog() == DialogResult.OK)
{
FileStream file = new FileStream(okno.FileName, FileMode.Open);
label1.Text = "Wczytano: " + okno.FileName.ToString();
long dlugosc = file.Length;
byte[] plik = new byte[file.Length];
file.Read(plik, 0, (int)file.Length);
file.Close();
tab = new List<byte>(plik); //przepisanie do pomocniczej kolekcji
button3.Enabled = true;
}
}
private void button3_Click(object sender, EventArgs e)
{
button4.Enabled = true;
if(tab.Count != 0)
{
long wyswietl = bit_parzystosci(tab);
textBox1.Text = wyswietl.ToString();
long wyswietl2 = suma_modulo(tab);
textBox2.Text = wyswietl2.ToString();
}

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

private void button4_Click(object sender, EventArgs e) // wprowadzanie bledow i sprawdzanie
{
int a = int.Parse(textBox3.Text);
if (a < 100)
{
Random losowa = new Random();
for (int i = 0; i < ((double)a * 0.01 * tab.Count); i++)
{
long numer = losowa.Next(tab.Count);
byte bajt = (byte)losowa.Next(Byte.MaxValue);

tab[(int)numer] = bajt;
}
long wyswietl = bit_parzystosci(tab);
textBox4.Text = wyswietl.ToString();
long wyswietl2 = suma_modulo(tab);
textBox5.Text = wyswietl2.ToString();
}
else
{
MessageBox.Show("Błąd. Wybrałeś wartość większą niż 100%");
}

}

private void button5_Click(object sender, EventArgs e)
{

}
}

}
wysio_90
New member
 
Posty: 2
Dołączył(a): Śr paź 26, 2011 9:38 am

Potrzebuje pomocy:)

Sponsors

Sponsor
 

Powrót do Projekty i kody źródłowe

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość