加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 关于小数分隔符的问题

发布时间:2020-12-16 01:47:16 所属栏目:百科 来源:网络整理
导读:小数分隔符(‘.’或’,’)是否取决于CurrentCulture? 我在序列化XML方面遇到了问题. 当我输入’,’作为分隔符时,我有一个例外. (文化被定为DE-de) 问候 示例(TestProperties是我自己的测试类) TestProperties properties = new TestProperties Thread.Curre
小数分隔符(‘.’或’,’)是否取决于CurrentCulture?

我在序列化XML方面遇到了问题.
当我输入’,’作为分隔符时,我有一个例外. (文化被定为DE-de)

问候

示例(TestProperties是我自己的测试类)

TestProperties properties = new TestProperties 

Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(cultureName);

double tempValue = 1.23 // Or 1,23
properties.DoubleValue = tempValue;

XmlSerializer serializer = new XmlSerializer(typeof(TestProperties));
TextWriter textWriter = new StreamWriter(XMLPath);
serializer.Serialize(textWriter,properties);
textWriter.Close();


public class TestProperties
    {   
        private double _doubleValue;
        [XmlElement("Double")]
        public double DoubleValue
        {
            get { return _doubleValue; }
            set { _doubleValue = value; }
        }
    }

解决方法

这完全取决于背景.你提到xml;在xml中,格式通常以非文化文化表示(这意味着:.是十进制的,是数千等).同样,xml具有日期/时间的特定表示.

如果您通过XmlWriter,XElement,XmlSerializer(等)构建xml,这将是自动的;如果你手工制作它可能会混淆(混合不同的表示).

如果数据不是预期的格式,您可能必须将其加载到字符串属性(而不是浮动等),并单独处理它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读