[英]Using string.Replace(char, char) does not modify my string
我有一個輸入字符串input
,值0.003 m
。
我需要做一些事情;
.
)替換為逗號( ,
) 這是我想出的:
try
{
if (input == "")
{
throw new Exception("Cannot have an empty String")
}
if(input.Contains('.'))
{
input.Replace('.', ',');
}
char[] CharactersToStrip = { ' ', 'm', 'k', 'g' };
string output = input.TrimEnd(CharactersToStrip);
return output;
}
catch (Exception Exception)
{
throw new Exception(Exception.Message);
}
字符串是不可變的,您必須重新分配它: input = input.Replace('.', ',');
關於異常主題,有幾點要說明:
Exception
而是拋出一個更具描述性的子類 Exception
命名會引起很多混亂並違反命名約定。 您需要將替換分配回輸入:
if (input.Contains('.'))
{
input = input.Replace('.', ',');
}
另外,您的try-catch
完全是多余的。 您要做的只是破壞堆棧信息,因此將其完全刪除。
嘆息,已經漫長的一天。 我需要給替換后的字符串一個值,它不能在其內部修復。
即。 input = input.replace('.', ',');
不管怎么說,還是要謝謝你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.