Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/40: Рейтинг темы: голосов - 40, средняя оценка - 4.55
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50

Запись введенных данных в определенную позицию текста

27.05.2016, 20:27. Показов 8354. Ответов 32
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте формучане, хочу попросить у вас помощь, не знаю как реализовать запись данных, которые ввел с клавиатуры в определенные позиции текста, например у нас есть текст:
Ваня любит хоть в кинотеатр _______ , вместе с со своей девушкой.
и мне нужно сделать так чтоб я вводил данные в TextBox и они записывались на место "земли _____"
как это реализовать?
Есть идеи что нужно считать файл и найти в нем слово кинотеатр и после него записать слово "СинемаМакс".
Либо есть другой вариант что занести в код текст и поставить переменную после слова Кинотеатр и в нее записывать введенное слово. Затем сохранять все это в файл.
Заранее спасибо....
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.05.2016, 20:27
Ответы с готовыми решениями:

Запись данных в определенную строку текстового файла
как можно записать в конец конкретной строки текст?

Запись введенных данных в файл
Нужно чтобы в файл дозаписывались данные согласно введенных пользователем значений в консоли. У меня есть два поля: ID , Owner Если...

Чтение данных с одного txt файла, запись данных во второй txt в определенную позицию
Добрый день, уважаемые форумчане! Нужна ваша помощь. Задача поставлена так: существует файл film2.txt (постараюсь его прикрепить для...

32
Эксперт .NET
 Аватар для Usaga
14337 / 9430 / 1358
Регистрация: 21.01.2016
Сообщений: 35,555
30.05.2016, 20:34
Студворк — интернет-сервис помощи студентам
CreatePackage должен быть частью класса GeneratedClass. Может не всё скопировал из утилиты?
1
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50
30.05.2016, 22:01  [ТС]
Usaga, да точно скопировал основное но не все, сейчас подключил все библиотеки нехватающие, вроде норм, сейчас мне получается понадобится, вписать в наш новый класс, дополнение в текст данных из textbox'ов
вот например есть строка
Кликните здесь для просмотра всего текста

paragraphProperties6.Append(paragraphSty leId5);

Run run10 = new Run();
Text text6 = new Text();
text6.Text = "действующее на основании ________________________________________ _____, именуемое в дальнейшем "Заказчик", и __________________________________,";

run10.Append(text6);

paragraph6.Append(paragraphProperties6);
paragraph6.Append(run10);

и надо после ", и ____" вставить textbox это сделать вот так??
C#
1
Заказчик", и ______________+textBox1.Text+____________________,";
и есть маленький нюанс мне надо выделить и обруть стольки земли сколько введено данных в textboxэто мне куда рыть??
0
Эксперт .NET
 Аватар для Usaga
14337 / 9430 / 1358
Регистрация: 21.01.2016
Сообщений: 35,555
31.05.2016, 04:46
dark_7k, ну тебе приводили уже примеры как строки форматированные делать. Если строк немного, то можно вручную выполнить конкатенацию:

C#
1
text6.Text = "Бла-бла" + textBox1.Text + " опять бла-бла";
Если фрагментов строк много, то лучше использоваться класс StringBuilder:

C#
1
2
3
4
5
6
7
StringBuilder sb = new StringBuilder();
sb.Append("Строка1");
sb.Append(textBox1.Text);
... 
/*Можно в цикле использовать sb для заполнения из ресурсов\контролов*/
...
text6.Text = sb.ToString();
Ну и, наконец, можно использовать String.Format:

C#
1
2
3
4
text6.Text = String.Format("Бла-бла {0} опять бла-бла", textBox1.Text);
//В случае C#6 (Visual Studio 2015) можно использовать такую запись, которая 
//развернётся компилятором в строку выше.
text6.Text = $"Бла-бла {textBox1.Text} опять бла-бла";
Но третий вариант не рекомендую, так как немного медленнее первых двух за счёт необходимости парсинга (анализа) введённой строки на предмет маркеров-заполнителей. Для небольших строк это не имеет значения, а вот для очень больших добавит приложению тупости.
0
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50
31.05.2016, 18:28  [ТС]
Usaga, да я вроде понял как сделать я так и сделал как (1й способ),а мне от это выдаёт, в инете искал, так и не понял в чем проблемаhttps://www.cyberforum.ru/atta... 1464711763
Миниатюры
Запись введенных данных в определенную позицию текста  
0
Эксперт .NET
 Аватар для Usaga
14337 / 9430 / 1358
Регистрация: 21.01.2016
Сообщений: 35,555
31.05.2016, 18:34
dark_7k, ну всё правильно. textBox1 - контрол внутри формы, класс GeneratedClass о нём знать не может. Тебе нужно передать строку из этого контрола (точнее из его свойства Text) в GeneratedClass, чтобы тот уже мог вставить эту строку в документ.

Надеюсь ты не будешь спрашивать как это сделать?
0
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50
01.06.2016, 00:14  [ТС]
Usaga, получается это должно быть в файле form1.designer.cs
C#
1
2
3
GeneratedClass f = new GeneratedClass();
        f.ShowDialog();
        this.textBox1.Text = f.Data;
а это в новом классе?
C#
1
2
3
4
5
6
7
public string Data
{
    get
    {
        return textBox1.Text;
    }
}
перерыл эти FAQ но так и не полуилось ничего...
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
01.06.2016, 00:35
dark_7k, я могу только одно сказать - шарп вам для этого не нужен. Все то же самое прекрасно делается средствами ворда. В нем есть довольно мощный механим "встроенных виндоус формс", Который все эти задачи решает. И подстановка данных, и выбор значения поля из нескольких вариантов, и даже формирование таблички на основании запроса в БД (!!!) - все это можно сделать средствами одного только ворда. Так что отложите шарп, возьмите справочник по ворду и посмотрите, как там это сделать.

Например выпадающий список:


Добавлено через 18 минут
Практически ваш случай:
1
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50
01.06.2016, 15:41  [ТС]
сделал вот та4к5 :
Это в кнопку
C#
1
2
3
4
5
GeneratedClass gen = new GeneratedClass();
gen.data1 = textBox1.Text;
gen.data2 = textBox2.Text;
gen.data3 = textBox3.Text;
gen.CreatePackage(@"D:\Output.docx");
а это в класс
C#
1
2
3
public string data1;
.......................2;
.......................3
Добавлено через 2 минуты
golubyatnikovtv, Usaga, diadiavova, Psilon, Спасибо всем за ответы и помощь, реально помогли, данная задача решена!
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 35
05.06.2016, 11:15
а что именно в итоге вы сделали с кнопками? как работает программа?
0
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50
09.06.2016, 05:44  [ТС]
какими кнопками?
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 35
09.06.2016, 15:59
вернее сказать не с кнопками а с вводом текста в файл. как он реализован?
0
1 / 1 / 1
Регистрация: 17.05.2013
Сообщений: 50
10.06.2016, 10:25  [ТС]
WolfProgrammist,Полистайте тему выше там казана сталья пользователем Usaga, про такой инструмент OpenXML Productivity Tool с помощью него можно легко выполнить необходимую задачу. Принцип её такой что вы добавляеете в эту программу документ WORD а она его генерирует в один большой класс с файлами XML. затем впрограмме нужно реализовать подключении ссылок на библиотеки SDK(все это описано в той инструкции), затем вам нужно создать файл в программе который будет содержать данный класс и при генерации word файла программа будет ссылаться на этот класс и про изводить преобразование, как добавить данные изtextBox в эот класс я уже описал выше, это у меня делается при помощи кнопки, тоесть процедура записывает все данные из текст боксов в переменные и далее вносит их НУЖНЫЕ места текста договора по типу "компьютер работает на операционной системе"+data1+"...") где data1 будет иметь текст например Windows7.
0
0 / 0 / 0
Регистрация: 05.06.2016
Сообщений: 35
12.06.2016, 13:30
dark_7k, вот, про data1
не понимаю, как правильно реализовать вставку
то есть вот сделали в кнопку
C#
1
2
GeneratedClass gen = new GeneratedClass();
gen.data1 = textBox1.Text;
а в класс как теперь правильно вставить чтобы текст из textbox1 вставился в файл?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.06.2016, 13:30
Помогаю со студенческими работами здесь

Запись в файл в определенную позицию
Такая проблема. Открываю файл записываю нули туда. Как в определенную позицию вместо нулей вставить значение? Ничего не получается. Файл...

Чтение/запись в файл на определенную позицию
Как в файле узнать , есть ли на том месте куда я хочу записать новое число, какое либо еще число? и если есть, занести следующее число...

Memo, вставка текста в предложение, в определенную позицию
Нужно в memo после определенного слова вставлять текст так чтобы другой текст не страдал. Например memo имеет текст "Мороз и солнце -...

Получить определенную строку в TextBox из текста, не зная её позицию и длину
Подскажите как вытащить определенную строку в textBox из текста не зная её позицию и длину. Текст из которого надо вытаить в сполере...

Printf запись символа на определенную позицию или длина выводимой строки
Есть строка, надо место, что осталось, заполнить пробелами, а на 150 например место записать |. Как это сделать?


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

Или воспользуйтесь поиском по форуму:
33
Ответ Создать тему
Новые блоги и статьи
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове. Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru