C# 解析各种字符串
您好,我可能有字符串,例如C# 解析各种字符串,c#,sql,sql-server,format,C#,Sql,Sql Server,Format,您好,我可能有字符串,例如“1,1”或“1.1”或“1”或”,我需要从每个字符串中获得相同格式的结果,以便将其作为数字(8,2)保存在SQL Db中 传递的字符串是:“2500,00”,但也可以是”或“2500.00” 这些值需要保存在sql numeric(8,2)中 当文本框p_ub_cis为空时,字符串为0,我得到的结果是:System.FormatException输入字符串的格式不正确 有人能帮我解决这个问题吗 感谢您抽出时间您的问题在于以下代码片段: p_ub_c.Text.Repl
“1,1”
或“1.1”
或“1”
或”
,我需要从每个字符串中获得相同格式的结果,以便将其作为数字(8,2)保存在SQL Db中
传递的字符串是:“2500,00”
,但也可以是”
或“2500.00”
这些值需要保存在sql numeric(8,2)中
当文本框p_ub_cis
为空时,字符串为0,我得到的结果是:System.FormatException输入字符串的格式不正确
有人能帮我解决这个问题吗
感谢您抽出时间您的问题在于以下代码片段:
p_ub_c.Text.Replace(',', '.') == string.Empty ? "0.00" : p_ub_c.Text
这表示“获取我的文本并替换”、“替换为”,如果结果为空字符串,则使用“0.00”,否则使用“文本”。换句话说,您将丢失替换的结果
如果您将其更改为存储替换的结果并对其进行解析,则应该可以修复该问题。但要小心有人输入例如“1000.1”,因为您最终会得到“1.000.1”,这仍然是一个无效的数字。您的问题在于以下代码片段:
p_ub_c.Text.Replace(',', '.') == string.Empty ? "0.00" : p_ub_c.Text
这表示“获取我的文本并替换”、“替换为”,如果结果为空字符串,则使用“0.00”,否则使用“文本”。换句话说,您将丢失替换的结果
如果您将其更改为存储替换的结果并对其进行解析,则应该可以修复该问题。小心有人输入例如“1000.1”,因为您将以“1.000.1”结束,这仍然是一个无效的数字。如果您从未使用
替换
返回的内容,则应按以下方式使用它:
string.IsNullOrEmpty(p_ub_c.Text) ? "0.00" : p_ub_c.Text.Replace(',', '.');
您从不使用
Replace
返回的内容,应按如下方式使用:
string.IsNullOrEmpty(p_ub_c.Text) ? "0.00" : p_ub_c.Text.Replace(',', '.');
对不起,你的问题毫无意义。1.1、1和空字符串如何产生相同的结果?你想让它们都等于什么值?我们能看到传递给
Decimal.Parse
的实际字符串吗?@DavidArno对不起,我的意思是相同的格式化结果。@Yosi我编辑了我的问题。根据你的回答,你不明白我的意思,我想让你显示-p_ub_c.Text.Replace(',')==string.Empty的计算结果?“0.00”:p_ub_c.Text,ci
,您不应该有,
,因为您已替换了它们。对不起,您的问题没有意义。1.1、1和空字符串如何产生相同的结果?你想让它们都等于什么值?我们能看到传递给Decimal.Parse
的实际字符串吗?@DavidArno对不起,我的意思是相同的格式化结果。@Yosi我编辑了我的问题。根据你的回答,你不明白我的意思,我想让你显示-p_ub_c.Text.Replace(',')==string.Empty的计算结果?“0.00”:p_ub_c.Text,ci
,您不应该有,
,因为您已经替换了它们。@DavidAmo谢谢您,但在Windows XP上它无法格式化。在我的Windows 8上,这没问题。你不知道怎么处理吗?对不起,马瑞克,但我不明白。什么东西不能在XP上格式化?您的代码在Windows 8上格式化很好,但在Windows XP上,它显示将nvarchar转换为数字时出错。我没有向您提供任何代码。我引用了你的话。您需要将其更改为@Yosi在其回答中提供的格式。@DavidAmo谢谢您,但在Windows XP上它无法格式化。在我的Windows 8上,这没问题。你不知道怎么处理吗?对不起,马瑞克,但我不明白。什么东西不能在XP上格式化?您的代码在Windows 8上格式化很好,但在Windows XP上,它显示将nvarchar转换为数字时出错。我没有向您提供任何代码。我引用了你的话。您需要将其更改为@Yosi在其回答中提供的内容。