Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
 Аватар для Kenedy
14 / 15 / 5
Регистрация: 11.10.2012
Сообщений: 121
.NET 4.x

Замена строк из ListBox

16.07.2013, 10:50. Показов 2985. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня в listBox1 записано н-ное кол-во строк(всегда разное)
Нужно что бы при выборе txt он брал первую строку и искал в ней название этого док-та и заменял на первую строку и сохранял с именем этой же строки, так же брал этот же док-т, только заменял уже на вторую строку, и так далее...
Я попробовал написать такой код, но у меня ничего не получилось, исправьте и помогите пожалуйста:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
string kolvo = listBox1.Items.Count.ToString();
                string w = listBox1.Items[0].ToString();
                string e2 = Path.GetFileNameWithoutExtension(o.FileName);
                int j = 0;
                string fileName = listBox1.Items[+1].ToString() + ".txt";
                for (int i = 0; i < listBox1.Items.Count; i++)
                {
                    if (File.Exists(fileName) != true)
                    {
                        using (StreamWriter sw = new StreamWriter(new FileStream(fileName, FileMode.Create, FileAccess.Write)))
                        {
                            sw.WriteLine(System.IO.File.ReadAllText(o.FileName, Encoding.Default).Replace(e2, w));
                        }
                    }
                    else
                    {
                        using (StreamWriter sw = new StreamWriter(new FileStream(fileName, FileMode.Open, FileAccess.Write)))
                        {
                            (sw.BaseStream).Seek(0, SeekOrigin.End);
                            MessageBox.Show("Файл с таким именем уже есть!");//sw.WriteLine(System.IO.File.ReadAllText(o.FileName, Encoding.Default).Replace(e2, listBox1.Items[0].ToString()));
                        }
                    }
Добавлено через 1 час 4 минуты
ну неужели никто в циклах не разбирается?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.07.2013, 10:50
Ответы с готовыми решениями:

Замена строк в ListBox по шаблону
Здравствуйте! Возможно уже был этот вопрос, а может и нет, и я первый =) По лабе создаю прогу, она работает по типу бланка,т.е....

Построчная замена текста в ListBox
как мне обновить в каждой строке Listbox только первую букву и букву которая после знака &quot;-&quot; ? У меня такой код for (int i =...

Сортировка строк в listbox
Ребят помогите срочно с сортировкой в listbox в футболистов и баскетболистов.Много чего перепробывал, может у вас что то получтся

3
 Аватар для DimanRu
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
16.07.2013, 20:25
Вы объясните поточнее, а то строка, строка, 1ая строка.... я прочитал раз 5 - все равно ничего не понял.
0
 Аватар для Kenedy
14 / 15 / 5
Регистрация: 11.10.2012
Сообщений: 121
17.07.2013, 09:11  [ТС]
Цитата Сообщение от DimanRu Посмотреть сообщение
Вы объясните поточнее, а то строка, строка, 1ая строка.... я прочитал раз 5 - все равно ничего не понял.
У меня есть 2 ткст.док-та
В первом записано: 1;2;3;4;5;6(к примеру)
Во втором: блаблабла12345блаблабла12345
Второй txt с названием 12345
Мне нужно что-бы при выборе первого ткст он в листбокс записал 6 строк
И при выборе второго ткст: брал название самого ткст (12345), искал такое в тексте док-та, и заменял все найденные значния на 1 и сохрпанил в отдельный ткст с названием 1.txt
И так далее проделал с другими 5 строками, считая что постоянно строк в листбоксе будет разное кол-во
0
 Аватар для DimanRu
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
17.07.2013, 18:08
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Вроде понял, вот попробуйте:
first и second - кнопки, на 1-ую выбираем 1 файл, на 2-ую - 2-ой.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
 
    private void first_Click(object sender, EventArgs e)
    {
        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
            listBox1.Items.Clear();
            listBox1.Items.AddRange(File.ReadAllText(openFileDialog1.FileName).Split(';'));
        }
    }
 
    private void second_Click(object sender, EventArgs e)
    {
        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
            string filename = openFileDialog1.SafeFileName;
            List<string> list = new List<string>();
            using (StreamReader reader = new StreamReader(openFileDialog1.FileName, Encoding.Default))
            {
                list.AddRange(reader.ReadToEnd().Split('\n'));
            }
 
            for (int i = 0; i < list.Count; i++)
            {
                list[i] = list[i].Replace(filename.Replace(".txt", ""), listBox1.Items[i].ToString());
            }
 
            using (StreamWriter writer = new StreamWriter(openFileDialog1.FileName, false, Encoding.Default))
            {
                foreach (string str in list)
                    writer.WriteLine(str);
            }
            File.Move(openFileDialog1.FileName, openFileDialog1.FileName.Replace(filename, "1.txt"));
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.07.2013, 18:08
Помогаю со студенческими работами здесь

Изменение строк в ListBox
Доброго времени суток всем! Такая проблемка. Есть на форме ListBox, который выводит определенную таблицу из базы данных. Чтобы...

Перенос строк в ListBox
Подскажите пожалуйста столкнулся с такой проблемой заношу строку в listbox а она вылазит за рамки размеров нельзя сделать так что б как то...

Количество строк в listBox
узнаю количество строк кодом int count = listBox1.Items.Count(); но увы и ах выдает ошибку ...

Перетаскивание строк в listbox
Хочу сделать програмку, с помощью которой можно было бы сортировать список строк. Как сделать, чтобы в Listbox можно было перетаскивать...

Вывести количество строк listBox
Как вывести количество строк из listBox, после загрузки информации из файла.. а вывести надо в label... Подскажите плиз.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Номеклатура. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru