改变"." 到C#字符串中的"_"

Dan*_*iel 3 c# string replace

我正在用C#开发一个软件,最终结果是一个Excel电子表格.使用多个变量创建电子表格的标题,以准确解释电子表格的内容.其中一个变量是一个包含如下数据的字符串:

'1.1.1'

我需要在创建电子表格时将其转换为:

'1_1_1'

我尝试过使用该String.Replace方法,但它似乎忽略了它.有任何想法吗?

最好的祝福

asa*_*yer 35

我打赌你这样做:

myString.Replace(".","_");
Run Code Online (Sandbox Code Playgroud)

当你应该这样做:

myString = myString.Replace(".","_");
Run Code Online (Sandbox Code Playgroud)

请记住,.Net字符串是不可变的,因此任何更改都会产生新的字符串.

  • +1 - 一个常见的错误,对于新的C#开发人员来说很容易. (3认同)

Jon*_*eet 12

你有可能无视结果string.Replace.你需要:

text = text.Replace('.', '_');
Run Code Online (Sandbox Code Playgroud)

只是调用Replace不会更改现有字符串 - 它会创建一个新字符串并返回它.字符串在.NET中是不可变的 - 它们在创建后永远不会改变.