.NET 帮助

C# 四舍五入到小数点后两位(开发人员指南)

发布 2024年四月29日
分享:

数字四舍五入编程是一项常见的工作,尤其是在处理需要精确到小数点后一定位数的财务数据或测量数据时。 在 C# 中,有几种方法可以将小数或两位数四舍五入到小数点后两位。 本教程将清楚地解释这些概念,并为您提供如何使用 C# 实现这种精确性的全面知识。 我们将研究IronPDF 库的功能以及 C# 语言提供的各种方法和函数来处理指定精度的十进制数。

了解 C&num 中的小数和双数值类型;

在深入学习数字四舍五入技巧之前,了解我们要处理的数字类型非常重要。 在 C# 中,decimaldouble 是用于数值的两种不同类型。 十进制变量通常在需要最高精度时使用,例如在财务计算中。 另一方面,在浮点计算已经足够、性能比精确度更重要的情况下,会使用结果。 这两种类型都可以使用 C# 库中的特定方法进行圆角处理。

使用 Math.Round 将数值四舍五入到两位小数

Math.Round方法是将小数值或双数值四舍五入到指定小数位数的最直接方法。 您还可以使用此数学函数将双数值四舍五入为最接近的整数。 该 Math.Round 值方法用途广泛,您可以指定小数点后要保留多少位数,如果数字正好位于两个区间的中间,您还可以选择四舍五入策略。

将小数四舍五入到小数位

要将一个小数四舍五入到小数点后两位,可以使用 Math.Round方法,该方法需要两个参数:要四舍五入的数和小数点后的位数。 下面是一个简单的例子:

decimal d = 3.14519M; // decimal number
decimal roundedValue = Math.Round(d, 2);
Console.WriteLine(roundedValue);  // Outputs: 3.15
decimal d = 3.14519M; // decimal number
decimal roundedValue = Math.Round(d, 2);
Console.WriteLine(roundedValue);  // Outputs: 3.15
Dim d As Decimal = 3.14519D ' decimal number
Dim roundedValue As Decimal = Math.Round(d, 2)
Console.WriteLine(roundedValue) ' Outputs: 3.15
VB   C#

在本例中,十进制值3.14519四舍五入为3.15。 方法 Math.Round将小数d四舍五入到小数点后两位。

C# 四舍五入到两位小数(开发人员如何操作):图 1 - 四舍五入两位小数的输出示例

双倍值的四舍五入

双倍值的四舍五入与十进制值的四舍五入类似。 下面是如何使用数学函数将一个两位数四舍五入到小数点后两位的代码:

double num = 3.14519;
double result = Math.Round(num, 2); // round to 2 digits
Console.WriteLine(result);  // Output: 3.15
double num = 3.14519;
double result = Math.Round(num, 2); // round to 2 digits
Console.WriteLine(result);  // Output: 3.15
Dim num As Double = 3.14519
Dim result As Double = Math.Round(num, 2) ' round to 2 digits
Console.WriteLine(result) ' Output: 3.15
VB   C#

此代码片段使用 math.round 值有效地将双倍数 3.14519 舍入为最接近的整数 3.15。 Math.Round 的第二个参数指定四舍五入到小数点后两位。

处理中点舍入

四舍五入的一个重要方面是如何处理数字正好位于两个可能的四舍五入值之间的中点的情况。 C# 提供了通过 MidpointRounding 枚举指定舍入行为的选项。 在这种情况下,可以控制四舍五入的方向。

double midpointNumber = 2.345; // double value format
double midpointResult = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(midpointResult);  // Outputs answer: 2.35
double midpointNumber = 2.345; // double value format
double midpointResult = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero);
Console.WriteLine(midpointResult);  // Outputs answer: 2.35
Dim midpointNumber As Double = 2.345 ' double value format
Dim midpointResult As Double = Math.Round(midpointNumber, 2, MidpointRounding.AwayFromZero)
Console.WriteLine(midpointResult) ' Outputs answer: 2.35
VB   C#

C# 四舍五入到 2 个小数位(开发人员如何操作):图 2 - 中点四舍五入至小数点后 2 位输出

在上例中,MidpointRounding.AwayFromZero告诉该方法将中点数2.345四舍五入到离零最近的数,结果是2.35。 这在常用四舍五入的财务计算中尤其有用。

使用 IronPdf 和 C# 对数字进行四舍五入并生成 PDFs

C# 四舍五入至 2 个小数位(开发人员如何操作):图 3 - IronPDF

IronPDF 是一个专为 .NET 平台设计、用 C# 编写的综合性 PDF 生成库。 它因能够创建通过渲染 HTML、CSS 和 JavaScript 生成高质量的 PDF 文件此外,还要提供图片。 这一功能可确保开发人员利用现有的网络开发技能生成 PDF。 IronPDF 利用 Chrome 浏览器渲染引擎生成像素完美的 PDF 文档,与网页浏览器中的布局如出一辙。

IronPDF 的主要特点是其HTML 到 PDF 的转换能力此外,还要确保保留您的布局和风格。 它可将网页内容转换为 PDF 文件,适用于报告、发票和文档。 您可以轻松地将 HTML 文件、URL 和 HTML 字符串转换为 PDF。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

		' 1. Convert HTML String to PDF
		Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
		Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
		pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")

		' 2. Convert HTML File to PDF
		Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
		Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
		pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
VB   C#

IronPDF 可以与 C# 无缝集成,以处理精确的任务,例如在嵌入 PDF 之前将小数四舍五入到小数点后两位。 这在对数字准确性要求较高的财务报告或发票中尤其有用。

举例说明:生成带有四舍五入小数点数值的 PDF

在本例中,我们将创建一个简单的 C# 应用程序,使用 IronPDF 生成一个 PDF 文档,其中包含一个四舍五入到小数点后两位的数字列表。 这演示了如何在实际场景中将数字计算与 PDF 生成整合在一起。

首先,您需要安装 IronPDF。 您可以通过 NuGet 完成这项工作:

Install-Package IronPdf

安装 IronPDF 后,您就可以通过 HTML 内容创建 PDF,包括四舍五入到小数点后两位的数字:

using IronPdf;
using System;
class Program
{
    static void Main()
    {
        License.LicenseKey = "License-Key";
        // Create a PDF document
        var Renderer = new ChromePdfRenderer();
        // Sample data that might come from a database or computation
        double initialValue = 2.345678;
        double roundedValue = Math.Round(initialValue, 2);
        // HTML content including the rounded value
        var htmlContent = $@"
            <html>
            <head>
                <title>PDF Report</title>
            </head>
            <body>
                <h1>Financial Report</h1>
                <p>Value after rounding: {roundedValue}</p>
            </body>
            </html>";
        // Convert HTML to PDF
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("Report.pdf");
        Console.WriteLine("PDF generated successfully.");
    }
}
using IronPdf;
using System;
class Program
{
    static void Main()
    {
        License.LicenseKey = "License-Key";
        // Create a PDF document
        var Renderer = new ChromePdfRenderer();
        // Sample data that might come from a database or computation
        double initialValue = 2.345678;
        double roundedValue = Math.Round(initialValue, 2);
        // HTML content including the rounded value
        var htmlContent = $@"
            <html>
            <head>
                <title>PDF Report</title>
            </head>
            <body>
                <h1>Financial Report</h1>
                <p>Value after rounding: {roundedValue}</p>
            </body>
            </html>";
        // Convert HTML to PDF
        var pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent);
        pdfDocument.SaveAs("Report.pdf");
        Console.WriteLine("PDF generated successfully.");
    }
}
Imports IronPdf
Imports System
Friend Class Program
	Shared Sub Main()
		License.LicenseKey = "License-Key"
		' Create a PDF document
		Dim Renderer = New ChromePdfRenderer()
		' Sample data that might come from a database or computation
		Dim initialValue As Double = 2.345678
		Dim roundedValue As Double = Math.Round(initialValue, 2)
		' HTML content including the rounded value
		Dim htmlContent = $"
            <html>
            <head>
                <title>PDF Report</title>
            </head>
            <body>
                <h1>Financial Report</h1>
                <p>Value after rounding: {roundedValue}</p>
            </body>
            </html>"
		' Convert HTML to PDF
		Dim pdfDocument = Renderer.RenderHtmlAsPdf(htmlContent)
		pdfDocument.SaveAs("Report.pdf")
		Console.WriteLine("PDF generated successfully.")
	End Sub
End Class
VB   C#

C# 四舍五入至 2 个小数位(开发人员如何操作):图 4 - PDF 输出

本示例展示了如何将 C# 数学运算的精确性与 IronPDF 的文档生成功能相结合,创建详细准确的 PDF 报告。 无论是财务摘要、技术报告,还是其他任何对数字准确性要求较高的文档,这种方法都能确保您的数据清晰、正确地呈现出来。

结论

C# 四舍五入至 2 个小数位(开发人员如何操作):图 5 - 许可证

将数字四舍五入到指定的小数位数是 C# 中处理小数和双数值的一个基本方面。 在本教程中,我们探讨了如何使用Math.Round函数四舍五入到小数点后两位。 我们还讨论了如何处理数字正好位于两个可以四舍五入的数字中间的情况。 IronPDF 提供一个可在其许可页面免费试用翻译的目的是让开发人员在购买前了解这些工具的功能。 如果您认为该工具符合您的需求,商业使用许可的起价为 749 美元。

< 前一页
工厂模式C#(开发者如何使用)
下一步 >
C# 子字符串(开发人员如何使用)

准备开始了吗? 版本: 2024.12 刚刚发布

免费NuGet下载 总下载量: 11,781,565 查看许可证 >