Visual Studio C#-我可以将一段文本提取到字符串变量吗?
如果我在程序中的多个位置键入了相同的文本字符串,是否有任何方法可以将其提取到字符串变量,并在最初键入的每个位置,让代码指向这一个变量 例如,我有以下代码:Visual Studio C#-我可以将一段文本提取到字符串变量吗?,c#,visual-studio,C#,Visual Studio,如果我在程序中的多个位置键入了相同的文本字符串,是否有任何方法可以将其提取到字符串变量,并在最初键入的每个位置,让代码指向这一个变量 例如,我有以下代码: if(File.Exists("C:\\whatever.txt")) { File.Delete("C:\\whatever.txt"); } 我可以将其重构为以下内容: string s1 = "C:\\whatever.txt"; if(File.Exists(s1)) { File.Delete(s1); } 我
if(File.Exists("C:\\whatever.txt"))
{
File.Delete("C:\\whatever.txt");
}
我可以将其重构为以下内容:
string s1 = "C:\\whatever.txt";
if(File.Exists(s1))
{
File.Delete(s1);
}
我知道这是我一开始应该做的,但假设我先整理程序的逻辑,然后整理代码,Visual Studio中是否有允许我这样做的快捷方式,或者我需要手动这样做
谢谢您需要手动操作。如果在应用程序的许多地方使用相同的路径,也可以将其存储在配置文件中。我认为Visual Studio中没有类似的功能,但Resharper有它:它被称为提取变量重构。我真的习惯了它的键盘快捷键(CTRL+R,CTRL+V) 它的一个优点是询问是替换所有出现的字符串,还是仅替换选定的字符串。如果使用,您只需选择第一个字符串,按CTRL+R+V键即可引入变量。对于相同的字符串,它将询问您是否希望用引入的变量替换这两个字符串 CTRL+SHIFT+R是另一个很好的键盘快捷键,它还显示了其他重构选项,如引入参数、字段、变量等
如果你使用Visual Studio,你真的应该有Resharper imo 可以说,最好是手动操作,除非您有Resharper,否则您也会厌倦它们之间的差异以及它们如何影响您的代码。Resharper对于这类事情来说是一个非常好的工具。这里有一个VisualStudio插件
一旦安装,您就可以使用Ctrl+Shift+R来删除像这样的神奇字符串。您也可以使用visual studio的查找和替换功能。em,您好,查找和替换还不够?我知道我可以使用查找和替换,只是想知道是否有更灵活的替代方法,@Tigran我想我可以在记事本中打开*.cs文件,对文本本身进行查找和替换?然而,下面的人建议使用Resharper,我将对其进行研究=)很难选择最佳答案,因为它们都非常相似,但这一个最为详细!谢谢大家!