Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.68/19: Рейтинг темы: голосов - 19, средняя оценка - 4.68
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533

Деление строк в файле

05.09.2019, 14:12. Показов 5267. Ответов 129

Студворк — интернет-сервис помощи студентам
Здравствуйте формучане. Есть идея сделать приложение, которое будет делить строки. Суть такова:

1) На компьютере, в разных местах, находится много *.txt файлов в которых много строк.
2) Содержаться они в кодировке UTF-8.
3) Файлы необходимо выбирать по кнопочке непосредственно в программе.
4) После выбора файлов они добавляются в список файлов которые необходимо отредактировать. (Допустим все выбранные файлы с помощью fileDialog мы добавляем в gridList).
5) После добавления необходимых файлов, по нажатию на кнопочку "Выполнить", те файлы которые мы добавили редактируются, список обновляется.

Буду рад любой помощи.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.09.2019, 14:12
Ответы с готовыми решениями:

Деление строк массива по условию
Задан двумерный целочисленный массив F размером 9 на 9 элементов. Написать процедуру для деление на 10 элементов тех строк массива, которые...

Деление строк массива по условию
Задан двумерный целочисленный массив F размером 9 на 9 элементов. Написать процедуру для деление на 10 элементов тех строк массива, которые...

Чтение из файла строк и их деление по заданному сочетанию символов
Собственно сабж, имеется файл примерно такого содержания : "Название итема1(строка)" ^^ число1(int) ^^ число2(int) ^^ число3(int) ^^...

129
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 13:47  [ТС]
Студворк — интернет-сервис помощи студентам
По моему в c# предусмотрен отдельный метод для этого.

Добавлено через 49 секунд
C#
1
System.IO.Path.GetFileName
Вроде бы вот так, но я не уверен.
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
09.09.2019, 14:00
Цитата Сообщение от Damenikx Посмотреть сообщение
Вроде бы вот так, но я не уверен.
хороший скептицизм, всегда нужен!
Но можно прочесть и документацию.
И становится ясно что да, это нам нужно, теперь только осталось понять откуда возьмем путь к файлу!
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 14:05  [ТС]
Путь к файлу мы берём при выборе в openFileDialog необходимому файлу + есть команда GetDirectoryName
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
09.09.2019, 14:33
Цитата Сообщение от Damenikx Посмотреть сообщение
Путь к файлу мы берём при выборе в openFileDialog необходимому файлу + есть команда GetDirectoryName
ответ не верный про файл диалог мы ничего в классе не знаем...
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 14:40  [ТС]
C#
1
System.IO.Path.GetDirectoryName
Затем с помощью функции Combine мы можем получить полный путь.

Добавлено через 1 минуту
Либо получить весь путь с помощью Path
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
09.09.2019, 15:24
Цитата Сообщение от Damenikx Посмотреть сообщение
Затем с помощью функции Combine мы можем получить полный путь.
Добавлено через 1 минуту
Либо получить весь путь с помощью Path
__________________
мимо, взгляните на ваш, класс что в нем известно (ну или может быть известно)?
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 15:48  [ТС]
Имя файла и адрес файла.

Добавлено через 2 минуты
Мне кажется, что вы подводите меня к тому, что имя файла нам известна, а вот адрес нет.

Добавлено через 18 минут
Ещё мне кажется, что данный класс будет в себе содержать полный путь к файлу, для того чтобы в последствии вызывать класс, а не его переменные.
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
09.09.2019, 16:07
Цитата Сообщение от Damenikx Посмотреть сообщение
будет в себе содержать полный путь к файлу
почему будет, когда уже
Цитата Сообщение от Damenikx Посмотреть сообщение
C#
1
2
public string FileAdress
 { get; set; }
???
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 16:12  [ТС]
Цитата Сообщение от V_Monomax Посмотреть сообщение
почему будет, когда уже
В данном свойстве же ещё ничего нет, оно ничего не возвращает и не получает, поэтому и будет.

Добавлено через 3 минуты
C#
1
2
        public string FileName
        { get { return Path.GetFileName("c:/1.txt"); } }
После этой операции свойство FileName будет содержать в себе только имя файла: 1.txt

Теперь тоже проделать, что получить путь?
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
09.09.2019, 16:26
Цитата Сообщение от Damenikx Посмотреть сообщение
В данном свойстве же ещё ничего нет
кто сказал?
Цитата Сообщение от Damenikx Посмотреть сообщение
поэтому и будет
нет не будет.
Суть того что мы делаем:
Мы вливаем в созданный класс полный путь к файлу (как зачем и почему дело десятое пока).
Так как нам нужно отобразить имя файла (возможно путь к нему), то нужно ввести такое свойство:
C#
1
2
3
4
5
6
7
8
public string FileAdress { get; set; }
 public string FileName
        { 
                get 
                { 
                        return Path.GetFileName(FileAdress); 
                } 
        }
никаких излишеств, зато при отрисовке на форме, не надо будет отдельно создавать никаких преобразований...
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 16:39  [ТС]
Эвано как. Я то думал это будет что-то похожее, как мы делали в предыдущий раз. Складывали фтп - адрес из нескольких кусочков. Всё понятно.
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
09.09.2019, 17:18
итак, класс готов? Выкладывайте код, посмотрим что в нем!
Хотелось бы еще что-бы вы подумали про обработчик указанного файла!
1
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
09.09.2019, 17:48
C#
1
2
3
4
5
6
7
8
9
10
11
12
            var lst = new List<string>();
            //где то в кнопке
            using(var fbd = new FolderBrowserDialog())
            {
                if (fbd.ShowDialog() == DialogResult.OK)
                    lst.Add(fbd.SelectedPath);
            }
            //где в другой кпнопке
            foreach (var item in lst)
            {
                //что-то делаем со всеми этими файлами
            }
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
09.09.2019, 17:49  [ТС]
V_Monomax, я смотрю уже за меня кто-то сделал))))
0
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
10.09.2019, 08:08  [ТС]
C#
1
2
3
4
5
6
7
 class FileModel
    {
        public string FileAdress
        { get; set }
        public string FileName
        { get { return Path.GetFileName(FileAdress); } }
    }
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
10.09.2019, 11:08
Цитата Сообщение от Damenikx Посмотреть сообщение
я смотрю уже за меня кто-то сделал
вам только подсказали в каком направлении копать, но вы должны еще подумать о том как вам необходимо все обставить!
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
10.09.2019, 11:45  [ТС]
V_Monomax, под обработчиком Вы имеете ввиду, то, что будет происходить с файлом?
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
10.09.2019, 11:57
Цитата Сообщение от Damenikx Посмотреть сообщение
под обработчиком Вы имеете ввиду, то, что будет происходить с файлом?
я имел ввиду обработчик нажатия кнопки выбрать файл!
1
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
10.09.2019, 12:05  [ТС]
V_Monomax, я понял, сейчас будет.

Добавлено через 3 минуты
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
private void Button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog chooseFile = new OpenFileDialog();
            chooseFile.Filter = "Текстовые файлы (*.txt)|*.txt|Все файлы (*.*)|*.*";
            chooseFile.Multiselect = true;
            chooseFile.ShowDialog();
 
            if (chooseFile.ShowDialog() == DialogResult.OK)
            {
                string sFileName = chooseFile.FileName;
                string[] arrAllFiles = chooseFile.FileNames;   
            }
        }
Добавлено через 36 секунд
Вчера ещё сделал.
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
10.09.2019, 12:10
Цитата Сообщение от Damenikx Посмотреть сообщение
Вчера ещё сделал.
хорошо, но вот это
Цитата Сообщение от Damenikx Посмотреть сообщение
Все файлы (*.*)|*.*
зачем нам?
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.09.2019, 12:10

Поиск строк в файле
Здравствуйте. Нужно в файле, например dll, exe, .., найти определённые строки, которые содержат пути к исходным текстам, и вывести...

Замена строк в файле
using System; using System.IO; using System.Linq; namespace ReadLine2 { class Program { static void...

Замена строк в файле
Привет! Допустим в файле несколько столбцов,например: Арбуз Груша Апельсин Арбуз Груша Яблоко.

Замена строк в файле
Добрый день! Я новичок, только что зарегистрировался на форуме. Помогите пожалуйста решить такую задачу: Есть текстовый файл....

Обработка строк в текстовом файле
Всем привет, столкнулся со следующей проблемой: есть текстовый файл, который получен из некоей программы, которая наполняет его инфой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru