Witam,
Muszę napisać program w języku C# na zaliczenie, który będzie w stanie realizować pewne funkcje edytora tekstu.
Program ma umożliwiać:
– tworzenie nowego dokumentu
– otwieranie dokumentu
– zapisywanie dokumentu
– wyszukiwanie słów w tekście (np. mam jakiś w stylu ala ma kota, dajmy na to szuka wyrazu ala i jak znajduje ma wyświetlić komunikat, że taki wyraz jest w tekście, w przeciwnym razie ma wyskoczyć komunikat w stylu takiego wyrazu nie ma w tekście)
– zamianę słów w tekście (np. jest tekst asia ma psa, dajmy na to chce zamienić wyraz ma na posiada i tekst będzie brzmiał asia posiada psa).
Do wyszukiwania i zamiany słów nie wiem za bardzo czego użyć czy mam to zapisywać do tablicy czy mam używać String builderów (jeśli z których tych rzeczy mam używać to jak to powinno mniej więcej wyglądać w tym przykładzie).
Będę bardzo wdzięczny za pomoc.
Oto kod (to co mi się udało na razie stworzyć czyli tworzenie, otwieranie i zapisywanie dokumentu):
using System;
using System.IO;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace zad1l6
{
public partial class Form1 : Form
{
string plik = "";
public Form1()
{
InitializeComponent();
}
private DialogResult czyzapisac()
{
DialogResult odp = MessageBox.Show("Chcesz zapisać zmiany?", "Notatnik",
MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation);
if (odp == DialogResult.Yes)
zapiszPlikToolStripMenuItem_Click(null, null);
return odp;
}
private void zamknijProgramToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void otwórzPlikToolStripMenuItem_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
{
DialogResult odp = czyzapisac();
if (odp == DialogResult.Cancel)
return;
plik = "";
textBox1.Clear();
}
OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "Plik tekstowy (*.txt)|*.txt";
dialog.Multiselect = false;
dialog.ShowDialog();
if (dialog.FileName != "")
{
plik = dialog.FileName;
StreamReader f = new StreamReader(plik);
textBox1.Text = f.ReadToEnd();
f.Close();
}
}
private void zapiszPlikToolStripMenuItem_Click(object sender, EventArgs e)
{
if (plik != "")
{
StreamWriter f = new StreamWriter(plik);
f.Write(textBox1.Text);
f.Close();
}
else zapiszJakoToolStripMenuItem_Click(sender, e);
}
private void zapiszJakoToolStripMenuItem_Click(object sender, EventArgs e)
{
SaveFileDialog dialog = new SaveFileDialog();
dialog.Filter = "Plik tekstowy (*.txt)|*.txt";
dialog.ShowDialog();
if (dialog.FileName != "")
{
plik = dialog.FileName;
StreamWriter f = new StreamWriter(plik);
f.Write(textBox1.Text);
f.Close();
}
}
private void nowyPlikToolStripMenuItem_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
{
DialogResult odp = czyzapisac();
if (odp == DialogResult.Cancel)
return;
plik = "";
textBox1.Clear();
}
}
}
}