Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
  • Результаты разработки






    Результатом разработки является пользовательское Windows – приложение. После запуска приложения и открытия файла можно посмотреть основную информацию о файле: Размер, дата создания, дата изменения, дата открытия, имя. Так же можно посмотреть какими атрибутами обладает файл и внести желаемые изменения и сохранить их.

    Так же можно выполнить переименование, перемещение и копирование файла.

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

    Программа может быть использована как замена некоторых функций Проводника Windows и текстовых редакторов. Функционал приложения ограничен поставленными задачами.

    Заключение

    1. В ходе данной работы были выполнены все поставленные задачи, повышен навык работы с платформой.NETFramework, языком программирования C#.

     

    2. Простейший интерфейс позволяет работать даже начинающим пользователям ПК.

     

    3. Предусмотрено уведомление пользователя об ошибках.

    4. Выполнены все требования к приложению, кроме применения функций WinAPI, т.к. они устарели и их использование значительно увеличило время разработки.

    5. Данное приложение можно доработать до более серьёзного приложения, к примеру до приложения, выполняющего базовые функции файл – менеджера.

    Список используемой литературы

    https://msdn.microsoft.com/ru-ru/library

    https://wincmd.ru/plugring/totalcmd.html

    https://msdn.microsoft.com/ru-ru/library/bb383977.aspx

     

     

    Приложение.

    Form1.cs:

    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 File_info

    {

     

    public partial class Form1: Form

    {

     

    FileInfo fileinf;

    public Form1()

    {

    InitializeComponent();

    }

     

    public bool check_exists(string fname) //проверка существования файла

    {

    if (File.Exists(fname))

    {

    return true;

    }

    else

    {

    MessageBox.Show(" Анализируемый файл был перемещён или удалён");

    return false;

    }

    }

     

     

    public void update_fname_info(string fname)

    {

    string tmp_fname = fileinf.Name;

    if (tmp_fname.Length > 25)

    {

    tmp_fname = tmp_fname.Substring(0, 25);

    }

     

    label1.Text = " Имя файла: \n" + tmp_fname;

     

    if (fileinf.Extension == ".txt")

    {

    button5.Enabled = true;

    }

    else

    {

    button5.Enabled = false;

    }

    }

     

     

    private void button1_Click(object sender, EventArgs e)

    {

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

    {

    fileinf = new FileInfo(openFileDialog1.FileName);

     

    update_fname_info(fileinf.Name);

     

    label2.Visible = true;

    label2.Text = " Информация о файле: \n"

    + " Размер: " +fileinf.Length.ToString()+" байт.\n"

    + " Создан: " +fileinf.CreationTime.ToString()

    + " \nИзменён: " + fileinf.LastWriteTime.ToString()

    + " \nОткрыт: " + fileinf.LastAccessTime.ToString();

     

    button6.Enabled = true;

     

    button2.Enabled = true;

    button3.Enabled = true;

    button4.Enabled = true;

    }

    }

     

    private void button6_Click(object sender, EventArgs e)

    {

    Form2 form_attrib = new Form2();

    form_attrib.fname = fileinf.FullName;

     

     

    if ((fileinf.Attributes & FileAttributes.Archive) == FileAttributes.Archive) //Является ли архивным?

    {

    form_attrib.checkBox1.Checked = true;

    }

     

    if ((fileinf.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)//Является ли скрытым?

    {

    form_attrib.checkBox2.Checked = true;

    }

     

    if ((fileinf.Attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly) //Является ли только для чтения?

    {

    form_attrib.checkBox3.Checked = true;

    }

     

    if ((fileinf.Attributes & FileAttributes.NotContentIndexed) == FileAttributes.NotContentIndexed) //Является ли включенным в индексацию?

    {

    form_attrib.checkBox4.Checked = false;

    }

     

    if ((fileinf.Attributes & FileAttributes.System) == FileAttributes.System) //Является ли системным?

    {

    form_attrib.checkBox5.Checked = true;

    }

     

    form_attrib.ShowDialog();

    fileinf.Refresh();

     

    }

     

    private void button2_Click(object sender, EventArgs e)

    {

    if (check_exists(fileinf.FullName))

    {

    Form3 form_rename = new Form3(); //Создаём форму 3 - окно переименования

    form_rename.textBox1.Text = fileinf.Name;

    form_rename.ShowDialog(); //выводим форму

    if (form_rename.change_name == true) //проверяем, изменили имя файла или нет

    {

    try

    {

    fileinf.MoveTo(fileinf.DirectoryName +@" \" +form_rename.textBox1.Text);

    update_fname_info(fileinf.Name); //обновляем в программе название файла

    }

    catch (Exception err)

    {

    MessageBox.Show(err.Message.ToString());

    }

    }

    }

    }

     

    private void button3_Click(object sender, EventArgs e)

    {

    if (check_exists(fileinf.FullName))

    {

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

    {

    fileinf.MoveTo(folderBrowserDialog1.SelectedPath + @" \" + fileinf.Name);

    MessageBox.Show(" Файл перемещён в " + folderBrowserDialog1.SelectedPath.ToString());

    }

     

    }

    }

     

    private void button4_Click(object sender, EventArgs e)

    {

    if (check_exists(fileinf.FullName))

    {

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

    {

    fileinf.CopyTo(folderBrowserDialog1.SelectedPath + @" \" + fileinf.Name);

    MessageBox.Show(" Файл скопирован в " + folderBrowserDialog1.SelectedPath.ToString());

    }

     

    }

    }

     

    private void button5_Click(object sender, EventArgs e)

    {

    if (check_exists(fileinf.FullName))

    {

    // if (fileinf.Length > 1024*1024*1024)

     

    int slov = 0; //объявляем переменные для статистики

    int strok = 0;

    int sym = 0;

    int sym_all = 0;

    string cur_line=" ";

    bool str_have_sym;

     

    TextReader reader = new StreamReader(fileinf.OpenRead()); // создаём объект для чтение содержимого файла

    while (true)

    {

    cur_line = reader.ReadLine(); //считываем 1 строку

     

    if (cur_line! = null) //Если строка существует

    {

    str_have_sym = false;

     

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

    {

    sym_all++; //считаем все символы

     

    if (cur_line[i] == ' ') // Не является ли текущий символ пробелом?

    {

    if (((i + 1) < cur_line.Length) & & (cur_line[i + 1]! = ' ')) // если символ не является последним и не явл. пробелом

    {

    slov++;

    }

     

    }

    else

    {

    str_have_sym = true; //Строка имеет символы

    sym++; //Считаем символы, без пробелов

    }

     

    }

     

    if (str_have_sym == true)

    {

     

    slov++;

    }

     

    strok++;

    }

    Else

     

    {

    break; //Выход из бесконечного цикла

    }

    }

     

    reader.Close(); //Закрываем файл для чтения содержимого

    MessageBox.Show(" Строк: " + strok.ToString() + " \n"

    + " Слов: " + slov.ToString() + " \n"

    + " Символов всего: " + sym_all.ToString() + " \n"

    + " Символов без пробелов: " + sym.ToString() + " \n");

     

    }

    }

    }

    }

    Form2.cs:

    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 File_info

    {

    public partial class Form2: Form

    {

     

    public string fname;

    public Form2()

    {

    InitializeComponent();

    }

     

    private void button2_Click(object sender, EventArgs e)

    {

    this.Close();

    }

     

    private void button1_Click(object sender, EventArgs e)

    {

    FileInfo fileinf = new FileInfo(fname); //Fileinf - объект класса FileInfo

     

    if (checkBox1.Checked == true)

    {

    fileinf.Attributes |= FileAttributes.Archive; // устанавливаем аттрибут

    }

    else

    {

    fileinf.Attributes ^= FileAttributes.Archive; //снимаем аттрибут

    }

     

    if (checkBox2.Checked == true)

    {

    fileinf.Attributes |= FileAttributes.Hidden;

    }

    else

    {

    fileinf.Attributes ^= FileAttributes.Hidden;

    }

     

    if (checkBox3.Checked == true)

    {

    fileinf.Attributes |= FileAttributes.ReadOnly;

    }

    else

    {

    fileinf.Attributes ^= FileAttributes.ReadOnly;

    }

     

    if (checkBox4.Checked == false)

    {

    fileinf.Attributes |= FileAttributes.NotContentIndexed;

    }

    else

    {

    fileinf.Attributes ^= FileAttributes.NotContentIndexed;

    }

     

    if (checkBox5.Checked == true)

    {

    fileinf.Attributes |= FileAttributes.System;

    }

    else

    {

    fileinf.Attributes ^= FileAttributes.System;

    }

     

    this.Close();

     

    }

     

    private void checkBox1_CheckedChanged(object sender, EventArgs e)

    {

     

    }

    }

    }

     

     

    Form3.cs:

    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;

     

    namespace File_info

    {

    public partial class Form3: Form

    {

    public bool change_name = false;

     

    public Form3()

    {

    InitializeComponent();

    }

     

    private void button1_Click(object sender, EventArgs e)

    {

    change_name = true;

    this.Close();

    }

     

    private void button2_Click(object sender, EventArgs e)

    {

    this.Close();

    }

     

    private void label1_Click(object sender, EventArgs e)

    {

     

    }

     

    private void textBox1_TextChanged(object sender, EventArgs e)

    {

     

    }

    }

    }

     

     






    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.