C#的String转换成float防止精度丢失问题的解决

 更新时间:2023年07月12日 09:30:07   作者:苍狼王unity学院  
这篇文章主要介绍了C#的String转换成float防止精度丢失问题的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

C#的String转换成float防止精度丢失

精度问题

float x = float.Parse(s);

在提交小数的时候会出现精度丢失问题,

举个例子:

unity中的Position中的x,y,z为2.073282,-1.106536,转换成float肯定会丢失值

  • float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)
  • double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E308(15个有效位)
  • decimal:数字型,128bit,28个有效位 float  与计算机中数值表示方法有关,不是准确数据. decimal 是准确数据,不会出现这个问题

解决办法

2cf9ee044a2c485fac417f40ed0b97b4.jpg

Unity C# String转Float

//方法1
float f1 = Convert.ToSingle(s);
//方法2
float f2;
if (!float.TryParse(s, out f2))
{
     Console.WriteLine("无法转换!");
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C#集合本质之链表的用法详解

    C#集合本质之链表的用法详解

    本文详细讲解了C#集合本质之链表的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • C#中FileSystemWatcher类实现监控文件夹

    C#中FileSystemWatcher类实现监控文件夹

    在C#中,如果你想要监控一个文件夹内文件的变动情况,比如文件的创建、删除、修改等,你可以使用FileSystemWatcher类,下面就来介绍一下FileSystemWatcher监控的使用,感兴趣的可以了解一下
    2024-03-03
  • C# 使用HttpClient上传文件并附带其他参数的步骤

    C# 使用HttpClient上传文件并附带其他参数的步骤

    这篇文章主要介绍了C# 使用HttpClient上传文件并附带其他参数的步骤,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-12-12
  • winform实现五子棋游戏

    winform实现五子棋游戏

    这篇文章主要为大家详细介绍了winform实现五子棋游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • C#实现Word与TXT文本格式互转的操作代码

    C#实现Word与TXT文本格式互转的操作代码

    在现代办公自动化和数据处理流程中,经常需要在不同的文档格式之间进行转换,将Word文档(.doc, .docx)转换为纯文本(.txt)可以方便地提取文字内容用于数据分析、内容索引或简化分享,本文将分享如何使用Spire.Doc for .NET实现TXT文本文件与Word文档之间的双向转换
    2025-09-09
  • C#实现根据年份计算生肖属相的方法

    C#实现根据年份计算生肖属相的方法

    这篇文章主要介绍了C#实现根据年份计算生肖属相的方法,涉及C#数组与字符串的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • WinForm实现的图片拖拽与缩放功能示例

    WinForm实现的图片拖拽与缩放功能示例

    这篇文章主要介绍了WinForm实现的图片拖拽与缩放功能,结合具体实例形式分析了WinForm鼠标事件响应及图片元素动态操作相关实现技巧,需要的朋友可以参考下
    2017-05-05
  • C#简单输出日历的方法

    C#简单输出日历的方法

    这篇文章主要介绍了C#简单输出日历的方法,涉及C#针对日期与时间的简单操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • C#集合之可观察集合的用法

    C#集合之可观察集合的用法

    这篇文章介绍了C#集合之可观察集合的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • C#实现WebAPI接口安全加密的具体方案

    C#实现WebAPI接口安全加密的具体方案

    在项目开发过程中,接口的安全性往往是一个容易被忽视但极其关键的环节,本文介绍了一套实际项目中已落地的 Web API 安全加密方案,涵盖了 SHA256 加签、RSA 非对称加密、AES 对称加密 以及相关数据格式转换等内容,需要的朋友可以参考下
    2025-06-06

最新评论