Файл: Анализ языковой сложности русскоязычных учебных пособий по лингвистике.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.10.2023

Просмотров: 222

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
end; i++)

{

if (streamReader.EndOfStream) break; string line = streamReader.ReadLine(); buff.Append(line+'\n');

if((i-start+1)%buffRowSize == 0)

{

rtbContext.AppendText(buff.ToString());

}

}

}
}
private void bFind_Click(object sender, EventArgs e)

{

long start = Decimal.ToInt64(nudStartLineIndex.Value); long end = Decimal.ToInt64(nudEndLineIndex.Value); string pattern = tbPatternInput.Text;

ContextInfo contextInfo = new ContextInfo(filename, pattern, start, end, encoding); lbPatterns.Items.Add(contextInfo);

}

private void nudEndLineIndex_ValueChanged(object sender, EventArgs e)

{

showText();

}
private void nudStartLineIndex_ValueChanged(object sender, EventArgs e)

{

showText();

}
private void updateContexts(ContextInfo contextInfo)

{

lbContexts.Items.Clear();

foreach (LineMatchInfo matchInfo in contextInfo.matches)

{

lbContexts.Items.Add(matchInfo);

}

}
private void lbPatterns_SelectedIndexChanged(object sender, EventArgs e)

{

ContextInfo contextInfo = (ContextInfo) lbPatterns.SelectedItem; if (contextInfo == null) return;

lcountExtraction.Text = "" + contextInfo.countExtracting(); updateContexts(contextInfo);

}
private void lbContexts_SelectedIndexChanged(object sender, EventArgs e)

{

LineMatchInfo matchInfo = (LineMatchInfo)lbContexts.SelectedItem; if (matchInfo == null) return;

rtbContext.Text = "";

for (int i=0; i < matchInfo.matchs.Count; i++)

{

Match match = matchInfo.matchs[i];
rtbContext.AppendText(matchInfo.indLine + "\t" + matchInfo.line + "\t"); int propOffset = matchInfo.line.IndexOf(matchInfo.proposals[i]); rtbContext.SelectionFont = new Font(rtbContext.Font, FontStyle.Regular);
rtbContext.AppendText(matchInfo.proposals[i].Substring(0, -propOffset + match.Index)); rtbContext.SelectionFont = new Font(rtbContext.Font, FontStyle.Underline); rtbContext.AppendText(match.Value);

rtbContext.SelectionFont = new Font(rtbContext.Font, FontStyle.Regular); rtbContext.AppendText(matchInfo.proposals[i].Substring(-propOffset + match.Index + match.Length) + "\n");
}
}
private void cbIgnoreCase_CheckedChanged(object sender, EventArgs e)

{

ContextInfo.isIgnoreCase = cbIgnoreCase.Checked;

}
private void bSaveFile_Click(object sender, EventArgs e)

{

Stream myStream;

SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"; saveFileDialog1.FilterIndex = 2; saveFileDialog1.RestoreDirectory = true;

int buffSize = 10485760;

if (saveFileDialog1.ShowDialog() == DialogResult.OK)

{

if ((myStream = saveFileDialog1.OpenFile()) != null)

{

using (var streamWriter = new StreamWriter(new BufferedStream( myStream, buffSize), GetEncoding()))
// буфер в 10 мегабайт

{

ContextInfo contextInfo = (ContextInfo) lbPatterns.SelectedItem; if(contextInfo == null)

{

MessageBox.Show("Не выбран паттерн"); myStream.Close();

return;

}

foreach(LineMatchInfo matchInfo in contextInfo.matches) for (int i = 0; i < matchInfo.matchs.Count; i++)

{
streamWriter.WriteLine(matchInfo.indLine + "\t" + matchInfo.line + "\t" + matchInfo.proposals[i]);
}

}

myStream.Close();

}

}

}

}

}

ПРИЛОЖЕНИЕ 4
Скриншоты словаря





Рисунок 1 – Изображение иллюстрационного фрагмента словаря в эскпортированном формате