Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Паутов_П.А._Диплом_Финиш

.pdf
Скачиваний:
22
Добавлен:
14.01.2018
Размер:
2.3 Mб
Скачать

Fd.Filter = "текстовые.файлы (*.txt)|*.txt;|Все файлы|*.*"; //Фильтр для отображения файлов формата .txt

// Показываем диалог и считываем каждый выбранный файл в массив файлов if (Fd.ShowDialog() == DialogResult.OK)

{

for (int i = 0; i < Fd.FileNames.Length; i++)

{

string file = Fd.FileNames[i];

System.IO.StreamReader reader = new System.IO.StreamReader(file); textBox1.Text += reader.ReadToEnd();

System.IO.StreamReader reader1 = new System.IO.StreamReader(file); _Test.Add(reader1.ReadToEnd());

if (textBox1.Text != null) button1.Enabled = true;

}

}

}

private SD.DataTable CreateTable(List<string> test)

61

{

DataRow row;

for (int i = 0; i < _Test.Count; i++)//цикл для разбития файла на слова, обработку и добавление в таблицу

{

row = localDBDataSet.DB.NewRow();//создаем новую строку string[] data = new string[40];

string[] slovo = new string[10];//создание массива слов которые будут добавляться в строку таблицы

string[] key = new string[999]; //создание массива слов содержащий слова из файла

key = _Test[i].Split(" .,?!;:_\r\n".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);

//разбитие файла на слова

for (int u = 0; u < key.Length; u++)

{

row["Id"] = i + 1;

if ((key[u] == "Должник") || (key[u] == "должник"))

{

slovo[1] = key[u + 1] + " " + key[u + 2] + " " + key[u + 3];

62

if ((key[u + 4] == "Оглы") || (key[u + 4] == "оглы") || (key[u + 4] == "Кызы") || (key[u + 4] == "кызы"))

{

slovo[1] = slovo[1] + " " +key[u + 4];

}

row["ФИО"] = slovo[1];

}

for (int d = 1; d <= 31; d++)

{

data[d] = Convert.ToString(d);

if ((key[u] == "дата") && (key[u + 1] == "рождения") && (key[u + 2] == data[d]))

{

slovo[2] = key[u + 2] + " " + key[u + 3] + " " + key[u + 4]; row["Дата рождения"] = slovo[2];

}

}

if ((key[u] == "ФС") || (key[u] == "ВС") || (key[u] == "АС") && (key[u+2].Length == 9))

{

slovo[3] = key[u] + " " + key[u + 1] + " " + key[u + 2]; row["Номер ИЛ"] = slovo[3];

63

}

for (int d = 1; d <= 31; d++)

{

data[d] = Convert.ToString(d);

if ((key[u] == "лист") && (key[u + 1] == "выдан") && (key[u + 2] == data[d]))

{

slovo[4] = key[u + 2] + " " + key[u + 3] + " " + key[u + 4]; row["ИЛ выдан"] = slovo[4];

}

}

}

localDBDataSet.DB.Rows.Add(row); if (localDBDataSet.DB.Rows != null) button6.Enabled = true;

}

return localDBDataSet.DB;

}

private void ExportToExcel()

{

Excel.Application exApp = new Excel.Application();

64

exApp.Visible = true; exApp.Workbooks.Add();

Worksheet workSheet = (Worksheet)exApp.ActiveSheet;

workSheet.Cells[1, 2] = "Акт приема-передачи документов"; Excel.Range _excelCells = (Excel.Range)workSheet.get_Range("B1",

"E1").Cells; _excelCells.Merge(Type.Missing);

(workSheet.Cells[1, 2] as Excel.Range).Font.Bold = true; // жирность

(workSheet.Cells[1, 2] as Excel.Range).Font.Size = 14; // Размер шрифта

_excelCells.HorizontalAlignment = Excel.Constants.xlCenter;

_excelCells.VerticalAlignment = Excel.Constants.xlCenter;

workSheet.Cells[3, 2] = "Дата передачи:" + " " + System.DateTime.Now;

workSheet.Cells[5, 1] = "Id"; workSheet.Cells[5, 2] = "ФИО"; workSheet.Cells[5, 3] = "Дата рождения"; workSheet.Cells[5, 4] = "Номер ИЛ"; workSheet.Cells[5, 5] = "ИЛ выдан";

for (int i = 0; i < dBDataGridView.Rows.Count - 1; i++)

{

for (int j = 0; j < dBDataGridView.ColumnCount; j++)

{

workSheet.Cells[i + 6, j + 1] = dBDataGridView.Rows[i].Cells[j].Value;

65

}

}

workSheet.Cells[dBDataGridView.Rows.Count + 6, 2] = "От кого:"; workSheet.Cells[dBDataGridView.Rows.Count + 6, 4] = "Кому:";

int kolvo = dBDataGridView.Rows.Count + 4;

var cells = workSheet.get_Range("A5", "E" + kolvo);

cells.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideVertical].LineS tyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous; // внутренние вертикальные

cells.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlInsideHorizontal].Lin eStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous; // внутренние горизонтальные

cells.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeTop].LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous; // верхняя внешняя

cells.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeRight].LineStyl e = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous; // правая внешняя

cells.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeLeft].LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous; // левая внешняя

cells.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeBottom].LineSt yle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;

workSheet.Columns.AutoFit();

66

string pathToXmlFile;

pathToXmlFile = Environment.CurrentDirectory + "\\" + "MyFile.xlsx"; workSheet.SaveAs("MyFile.xlsx");

exApp.Quit();

}

private void button7_Click(object sender, EventArgs e)

{

Upload();

}

private void button1_Click(object sender, EventArgs e)

{

CreateTable(_Test);

}

private void button6_Click(object sender, EventArgs e)

{

ExportToExcel();

}

private void dBBindingNavigatorSaveItem_Click(object sender, EventArgs e)

{

this.Validate();

67

this.dBBindingSource.EndEdit();

this.tableAdapterManager.UpdateAll(this.localDBDataSet);

}

}

}

68

Выпускная квалификационная работа выполнена мной совершенно самостоятельно. Все использованные в работе материалы и концепции из опубликованной научной литературы и других источников имеют ссылки на них.

_________ ______ /_______________________/

подпись

(Ф.И.О.)

«___» ______________ 2017 г.

69