将字符串添加到逐字字符串文本



我有一个名为defaultPath的路径,我想将其添加到这个逐字字符串文字中,但可以很好地获得引号。

    @"""C:MavroMavBridgeServerMavBridgeService.exe"" /service /data ""..Data"""

我试图添加+默认路径来替换数据。所以假设我有一个文件夹名称 Data.Apple,我希望输出是

   "C:MavroMavBridgeServerMavBridgeService.exe" /service /data "..Data.Apple"

但是当我在过去的半个小时里一直在这样做时,我一直在得到

   "C:MavroMavBridgeServerMavBridgeService.exe" /service /data ".."Data.Apple

   "C:MavroMavBridgeServerMavBridgeService.exe" /service /data ".." + defaultPath

这样做(首选):

string.Format(@"""C:MavroMavBridgeServerMavBridgeService.exe"" /service /data ""..{0}""", defaultPath);

或者像这样:

@"""C:MavroMavBridgeServerMavBridgeService.exe"" /service /data "".." + defaultPath + """;

第一个使用 string.Format ,它基本上将第一个参数中的{0}替换为第二个参数中的值并返回结果。

第二个使用经典的字符串连接,我在那里所做的是删除最后一个反斜杠(""..而不是"".."")后的双引号,因为您不希望反斜杠后的引号。你想要defaultPath之后的引号.这就是这段代码的作用:它附加defaultPath" + defaultPath),并在后面附加结束引号(+ """)。

因此,

如果您想利用 c# 6 的字符串插值,您也可以这样做

var randomText = "insert something";
var yourString = $@"A bunch of text in here 
that is on seperate lines
but you want to {randomText }";

使用字符串。在引号之间插入变量的格式:

string path = "Data.Apple";
string verbatim = string.Format(@"""C:MavroMavBridgeServerMavBridgeService.exe"" /service /data ""{0}""", path);
MessageBox.Show(verbatim);

它使阅读和实现更易于,您可以以类似的方式将路径的其他部分替换为可变部分。

如果您尝试仅将"defaultPath"变量附加到末尾,它将永远无法正常工作,因为您已经添加了结束"

相关内容

  • 没有找到相关文章

最新更新