У меня есть список функций из 75000 для моего проекта. Я хочу динамически загружать каждый файл класса и добавлять одну строку поверх функции и строки в конце. Это лучший способ обновить определенную часть файла. Я не хочу делать здесь небольшую ошибку со своего исходного кода и во всем мире.Обновление Конкретная часть моего .vb-файла
ответ
Лучший способ - не делать этого вообще. У вас есть 75 000 глобальных функций? Вы нарушаете правила объектно-ориентированного программирования.
Кроме того, это невозможно без каких-либо ужасных отражений и динамических компиляционных хаков, которые замедляли бы ситуацию до ползания.
чувак, ты можешь рассказать мне, как он нарушает правило ООП, если это правило? –
Я спрашиваю, у меня мало исходных файлов, просто вана редактирует все функции и вам нужно включить в них новый код строки. я могу обрабатывать его как текстовый файл, но его очень сложно .. –
i wana знаю, если есть какой-либо другой способ. –
Похоже, вам нужен редактор текстовых файлов, который может выполнять поиск и замену в файлах. Например, заменить все вхождения
End Function
с
NewLineText1
NewLineText2
End Function
И то же самое с суб.
Добавление строки в верхней части функции будет немного сложнее, но я уверен, что с хорошим регулярным выражением или приличной поддержкой от инструмента поиска и замены это должно быть довольно легко понять.
Мы используем поиск и замену от funduc, но у них есть и другие инструменты, и я уверен, что там будет тонна, которая будет выполнять эту работу.
Вы также можете сделать то же самое с макросом в визуальной студии, что теперь, когда я думаю об этом, может быть еще проще.
Например (псевдо-код):
Search for " sub "
If the previous word is not "End"
Jump to the end of the line
Add a new line
Go to the beginning of the new line
Add your new text
Else
Jump to the beginning of the current line
Add a new line (to force the End Sub down)
Go up a line (if you are still on the end sub line)
Add your new lines.
Если вы беспокоитесь о порче исходного кода с «малой ошибкой», что наводит на мысль, что вы не используете какой-либо форме управления версиями! Убедитесь, что у вас есть резервные копии вашего кода где-нибудь, а затем !! –