返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C#Double转化为String时的保留位数及格式方式
  • 215
分享到

C#Double转化为String时的保留位数及格式方式

Double转化StringString保留位数String保留格式 2023-02-25 17:02:27 215人浏览 安东尼
摘要

目录Double转化为String时的保留位数及格式Double类型转String 类型出现精度丢失问题总结Double转化为String时的保留位数及格式 有时需要将程序中的数据写

Double转化为String时的保留位数及格式

有时需要将程序中的数据写入到文件中进行保存,这时候就涉及到数据的字符串格式问题。

下面介绍Double转化为String时如何设置保留位数及格式,示例来自官方资料,本文用于日后快速查询。

Double.ToString Method官方资料

double[] numbers= {1054.32179, -195489100.8377, 1.0437E21, 
                   -1.0573e-05};
string[] specifiers = { "C", "E", "e", "F", "G", "N", "P", 
                        "R", "#,000.000", "0.###E-000",
                        "000,000,000,000.00###" };
foreach (double number in numbers)
{
   Console.WriteLine("FORMatting of {0}:", number);
   foreach (string specifier in specifiers) {
      Console.WriteLine("   {0,-22} {1}", 
                        specifier + ":", number.ToString(specifier));
      // Add precision specifiers from 0 to 3.
      if (specifier.Length == 1 & ! specifier.Equals("R")) {
         for (int precision = 0; precision <= 3; precision++) {
            string pSpecifier = String.Format("{0}{1}", specifier, precision);
            Console.WriteLine("   {0,-22} {1}", 
                              pSpecifier + ":", number.ToString(pSpecifier));
         }    
         Console.WriteLine();
      }   
   }
   Console.WriteLine();
}
// The example displays the following output to the console:
//       Formatting of 1054.32179:
//          C:                     $1,054.32
//          C0:                    $1,054
//          C1:                    $1,054.3
//          C2:                    $1,054.32
//          C3:                    $1,054.322
//       
//          E:                     1.054322E+003
//          E0:                    1E+003
//          E1:                    1.1E+003
//          E2:                    1.05E+003
//          E3:                    1.054E+003
//       
//          e:                     1.054322e+003
//          e0:                    1e+003
//          e1:                    1.1e+003
//          e2:                    1.05e+003
//          e3:                    1.054e+003
//       
//          F:                     1054.32
//          F0:                    1054
//          F1:                    1054.3
//          F2:                    1054.32
//          F3:                    1054.322
//       
//          G:                     1054.32179
//          G0:                    1054.32179
//          G1:                    1E+03
//          G2:                    1.1E+03
//          G3:                    1.05E+03
//       
//          N:                     1,054.32
//          N0:                    1,054
//          N1:                    1,054.3
//          N2:                    1,054.32
//          N3:                    1,054.322
//       
//          P:                     105,432.18 %
//          P0:                    105,432 %
//          P1:                    105,432.2 %
//          P2:                    105,432.18 %
//          P3:                    105,432.179 %
//       
//          R:                     1054.32179
//          #,000.000:             1,054.322
//          0.###E-000:            1.054E003
//          000,000,000,000.00###: 000,000,001,054.32179
//       
//       Formatting of -195489100.8377:
//          C:                     ($195,489,100.84)
//          C0:                    ($195,489,101)
//          C1:                    ($195,489,100.8)
//          C2:                    ($195,489,100.84)
//          C3:                    ($195,489,100.838)
//       
//          E:                     -1.954891E+008
//          E0:                    -2E+008
//          E1:                    -2.0E+008
//          E2:                    -1.95E+008
//          E3:                    -1.955E+008
//       
//          e:                     -1.954891e+008
//          e0:                    -2e+008
//          e1:                    -2.0e+008
//          e2:                    -1.95e+008
//          e3:                    -1.955e+008
//       
//          F:                     -195489100.84
//          F0:                    -195489101
//          F1:                    -195489100.8
//          F2:                    -195489100.84
//          F3:                    -195489100.838
//       
//          G:                     -195489100.8377
//          G0:                    -195489100.8377
//          G1:                    -2E+08
//          G2:                    -2E+08
//          G3:                    -1.95E+08
//       
//          N:                     -195,489,100.84
//          N0:                    -195,489,101
//          N1:                    -195,489,100.8
//          N2:                    -195,489,100.84
//          N3:                    -195,489,100.838
//       
//          P:                     -19,548,910,083.77 %
//          P0:                    -19,548,910,084 %
//          P1:                    -19,548,910,083.8 %
//          P2:                    -19,548,910,083.77 %
//          P3:                    -19,548,910,083.770 %
//       
//          R:                     -195489100.8377
//          #,000.000:             -195,489,100.838
//          0.###E-000:            -1.955E008
//          000,000,000,000.00###: -000,195,489,100.8377
//       
//       Formatting of 1.0437E+21:
//          C:                     $1,043,700,000,000,000,000,000.00
//          C0:                    $1,043,700,000,000,000,000,000
//          C1:                    $1,043,700,000,000,000,000,000.0
//          C2:                    $1,043,700,000,000,000,000,000.00
//          C3:                    $1,043,700,000,000,000,000,000.000
//       
//          E:                     1.043700E+021
//          E0:                    1E+021
//          E1:                    1.0E+021
//          E2:                    1.04E+021
//          E3:                    1.044E+021
//       
//          e:                     1.043700e+021
//          e0:                    1e+021
//          e1:                    1.0e+021
//          e2:                    1.04e+021
//          e3:                    1.044e+021
//       
//          F:                     1043700000000000000000.00
//          F0:                    1043700000000000000000
//          F1:                    1043700000000000000000.0
//          F2:                    1043700000000000000000.00
//          F3:                    1043700000000000000000.000
//       
//          G:                     1.0437E+21
//          G0:                    1.0437E+21
//          G1:                    1E+21
//          G2:                    1E+21
//          G3:                    1.04E+21
//       
//          N:                     1,043,700,000,000,000,000,000.00
//          N0:                    1,043,700,000,000,000,000,000
//          N1:                    1,043,700,000,000,000,000,000.0
//          N2:                    1,043,700,000,000,000,000,000.00
//          N3:                    1,043,700,000,000,000,000,000.000
//       
//          P:                     104,370,000,000,000,000,000,000.00 %
//          P0:                    104,370,000,000,000,000,000,000 %
//          P1:                    104,370,000,000,000,000,000,000.0 %
//          P2:                    104,370,000,000,000,000,000,000.00 %
//          P3:                    104,370,000,000,000,000,000,000.000 %
//       
//          R:                     1.0437E+21
//          #,000.000:             1,043,700,000,000,000,000,000.000
//          0.###E-000:            1.044E021
//          000,000,000,000.00###: 1,043,700,000,000,000,000,000.00
//       
//       Formatting of -1.0573E-05:
//          C:                     $0.00
//          C0:                    $0
//          C1:                    $0.0
//          C2:                    $0.00
//          C3:                    $0.000
//       
//          E:                     -1.057300E-005
//          E0:                    -1E-005
//          E1:                    -1.1E-005
//          E2:                    -1.06E-005
//          E3:                    -1.057E-005
//       
//          e:                     -1.057300e-005
//          e0:                    -1e-005
//          e1:                    -1.1e-005
//          e2:                    -1.06e-005
//          e3:                    -1.057e-005
//       
//          F:                     0.00
//          F0:                    0
//          F1:                    0.0
//          F2:                    0.00
//          F3:                    0.000
//       
//          G:                     -1.0573E-05
//          G0:                    -1.0573E-05
//          G1:                    -1E-05
//          G2:                    -1.1E-05
//          G3:                    -1.06E-05
//       
//          N:                     0.00
//          N0:                    0
//          N1:                    0.0
//          N2:                    0.00
//          N3:                    0.000
//       
//          P:                     0.00 %
//          P0:                    0 %
//          P1:                    0.0 %
//          P2:                    0.00 %
//          P3:                    -0.001 %
//       
//          R:                     -1.0573E-05
//          #,000.000:             000.000
//          0.###E-000:            -1.057E-005
//          000,000,000,000.00###: -000,000,000,000.00001 

Double类型转String 类型出现精度丢失问题

C#中Double值用ToString()方法获取string

若Double数字位数超过16位就会造成精度缺失

建议用取整和取小数部分再合并的方式获取相对精确的string

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: C#Double转化为String时的保留位数及格式方式

本文链接: https://lsjlt.com/news/197546.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C#Double转化为String时的保留位数及格式方式
    目录Double转化为String时的保留位数及格式Double类型转String 类型出现精度丢失问题总结Double转化为String时的保留位数及格式 有时需要将程序中的数据写...
    99+
    2023-02-25
    Double转化String String保留位数 String保留格式
  • C# Double转化为String时的保留位数及格式方法是什么
    本篇内容介绍了“C# Double转化为String时的保留位数及格式方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Do...
    99+
    2023-07-05
  • vue金额格式化保留两位小数的实现
    目录金额格式化保留两位小数自定义过滤器 格式化金额(保留两位小数)金额格式化保留两位小数 Vue.filter("number", function(data) {     retu...
    99+
    2024-04-02
  • JavaScript如何格式化数字、金额、千分位、保留几位小数、舍入舍去
    小编给大家分享一下JavaScript如何格式化数字、金额、千分位、保留几位小数、舍入舍去,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解...
    99+
    2024-04-02
  • Java前后端时间格式的转化方式
    JsonFormat、DateTimeFormat使用 从数据库获取时间传到前端进行展示的时候,我们有时候可能无法得到一个满意的时间格式的时间日期,在数据库中显示的是正确的时间格式,...
    99+
    2024-04-02
  • c++11多种格式时间转化为字符串的方法实现
    1.打印系统当前时间,或者将系统当前时间转化为字符串 #include <iostream> #include <sstream> #include &l...
    99+
    2024-04-02
  • wps中将pdf格式转化为word格式的方法有哪些
    这篇文章将为大家详细讲解有关wps中将pdf格式转化为word格式的方法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。转化方法:1、用wps软件打开pdf文档;2、点击“开始”选项卡,点击“PDF转...
    99+
    2023-06-14
  • JS时间戳转换为常用时间格式的三种方式
    目录前言1、js 时间戳转日期(可直接复制)2、在main.js中创建过滤器(1)main.js中,创建过滤器将其挂载到vue上(2)页面中具体使用3、day.js(1)三种安装方式...
    99+
    2023-05-16
    js时间戳转换为时间 js时间戳转换 js怎么将时间戳换为时间
  • c++11多种格式时间转化为字符串的实现方法是什么
    c++11多种格式时间转化为字符串的实现方法是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。打印系统当前时间,或者将系统当前时间转化为字符串#include ...
    99+
    2023-06-21
  • Java前后端时间格式的转化方法
    这篇文章主要介绍“Java前后端时间格式的转化方法”,在日常操作中,相信很多人在Java前后端时间格式的转化方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java前后端时间格式的转化方法”的疑惑有所帮助!...
    99+
    2023-06-20
  • 浅析php将秒数转为时分秒格式的方法
    在PHP中,秒数是需要时分秒格式化的常见情况。因此,将秒数转换为时分秒格式在PHP中是一项非常重要的技能。要将秒数转化为时分秒格式,我们可以使用PHP内置函数来完成。下面就让我们来详细了解一下这个过程。第一步:获取秒数首先,我们需要获取需要...
    99+
    2023-05-14
  • C#中时间的几种格式转换方法
    有时候我们要对C#时间进行转换,达到不同的显示效果 默认格式为:2005-6-614:33:34 如果要换成成200506,06-2005,2005-6-6或更多的该怎么办呢 我们要...
    99+
    2022-11-15
    时间 格式转换
  • python-将excel表格中的数据转化为json数据格式
    前言 excel表格中的数据,转化为json格式,再用程序去处理json数据,是常见的数据处理方式。这样可以实现按照需求去做数据处理。 需要用到的软件 除了python环境外,主要用到读取excel文...
    99+
    2023-09-02
    python excel json
  • js数字格式化为小数点后两位的方法是什么
    将数字格式化为小数点后两位的方法有多种,以下是其中两种常用的方法:1. 使用toFixed()方法:var num = 123.45...
    99+
    2023-05-13
    js数字格式化 js
  • javascript将时间戳转为日期格式的方法
    本篇内容主要讲解“javascript将时间戳转为日期格式的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript将时间戳转为日期格式的方法”吧...
    99+
    2024-04-02
  • MySQL数据库中时间戳及时间戳的格式转换
    一、什么是时间戳 时间戳是指格林威治时间自1970年1月1日(00:00:00 GMT)至当前时间的总秒数。通俗的讲,时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。 常见有10位(单位:秒)和13位(单位:毫秒)...
    99+
    2023-09-20
    mysql 数据库 时间戳 时间戳格式转换
  • 如何将Vue的请求参数转化为json格式
    在Vue开发中,我们经常需要通过Ajax请求获取服务器端数据,而传递参数时,我们会将参数构建为一个对象或者数组,这个对象或者数组就是我们发起请求时的请求参数。但是在Vue开发中,我们经常会遇到一个问题:我们无法直接将一个复杂的对象或者数组作...
    99+
    2023-05-14
  • 常见的PHP时间格式转为时间戳的方法有哪些
    今天小编给大家分享一下常见的PHP时间格式转为时间戳的方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。strtoti...
    99+
    2023-07-05
  • JS时间戳转换为常用时间格式的方法有哪些
    这篇文章主要介绍“JS时间戳转换为常用时间格式的方法有哪些”,在日常操作中,相信很多人在JS时间戳转换为常用时间格式的方法有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JS时间戳转换为常用时间格式的方法...
    99+
    2023-07-06
  • Python简单格式化时间的方法【strftime函数】
    本文实例讲述了Python简单格式化时间的方法,分享给大家供大家参考,具体如下: walker经常用到当前时间和相对时间,用来统计程序执行的效率,简单记一下,便于copy。 >>> i...
    99+
    2022-06-04
    函数 简单 时间
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作