<< Studentská tombola | C# - cvičení | Kalkulačka >>
Zadání
- Vytvořte v CS aplikaci pro pro evidenci žáků
- Evidujte ID, Jméno, CJ, AJ, MAT, IT
- pomocí roletového menu vyvolejte dialog pro otevření textového souboru
- zajistěte čtení dat z textového souboru do dvojrozměrného pole včetně výpočtu průměru ze zadaných známek
- vypište v multiline textboxu (listView, gridView) obsah textového souboru
- umožněte výběr studenta a editaci jeho dat včetně zpětného uložení do souboru
Textový testovací soubor
1,Jiří Paleček,1,2,1,6
2,Karel Zeman,2,2,4,1
3,Hana Koblasová,3,3,2,2
4,Petr Černý,4,3,2,3
Ukázka kódu
public void otevřítToolStripMenuItem_Click(object sender, EventArgs e)
{
Stream myStream = null;
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory = "d:\";
openFileDialog1.Filter = "txt soubory (*.txt)|*.txt|Všechny soubory (*.*)|*.*";
openFileDialog1.FilterIndex = 1;
openFileDialog1.RestoreDirectory = true;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
try
{
if ((myStream = openFileDialog1.OpenFile()) != null)
{
using (myStream)
{
// Insert code to read the stream here.
string jménoSouboru = openFileDialog1.FileName;
Encoding kódování;
kódování = Encoding.UTF8;
StreamReader sr = new StreamReader(jménoSouboru, kódování);
int početŘádků = 4;
int početPoložek = 5;
int čísloPoložky = 0;
int čísloŘádku = 0;
string řádek;
string[] řádky = new string[početŘádků];
string[] položky = new string[početPoložek];
string[,] data = new string[početŘádků,početPoložek];
while ((řádek = sr.ReadLine()) != null )
{
řádky[čísloŘádku] = řádek;
položky = řádky[čísloŘádku].Split(',');
foreach (string položka in položky)
{
data[čísloŘádku, čísloPoložky] = položka;
čísloPoložky++;
}
čísloPoložky = 0;
cbJméno.Items.Add(data[čísloŘádku, 0]);
čísloŘádku++;
}
tbText.Lines = řádky;
sr.Close();
}
}
}
catch (Exception ex)
{
MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
}
}
}
