C#中的小数和百分数计算与byte数组操作

 更新时间:2022年04月25日 08:23:26   作者:農碼一生  
这篇文章介绍了C#中的小数和百分数计算与byte数组操作,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、百分数

//按照四舍五入的国际标准
string p1 = (Math.Round(0.333367, 4)*100).ToString() + "%";//33.34%
double dbdata = Math.Round((double)1 / (double)3, 5) * 100;//33.333
string p2 = String.Format("{0:F}", dbdata) + "%";//默认为保留两位

二、进制保留

带小数点

//保证分母为double
double t = Math.Round(1.0 / 3, 5) * 100;//33.33
double tt = Math.Round(1.0 / 3.0, 5) * 100;//33.333
//m代表decimal.
decimal res = 100m / 1000;//0.1

不带小数点

//保留为整数
double ttt = Math.Round(1.0 / 3.0, 0);//0

三、取余数

int a = 10 % 3;//取余数

byte数组操作

//1.字节转换
float m = 5f;
var btValue = BitConverter.GetBytes(m).Reverse().ToArray();
//转为原值字符串
string m1 = System.Text.Encoding.Default.GetString(btValue);

//2.byte 数组合并
byte[] data = new byte[10];
byte[] counts = new byte[3];
byte[] ndata = new byte[data.Length + counts.Length];
//将data复制到ndata
data.CopyTo(ndata, 0);//从ndata的下标为0的地方开始存放
counts.CopyTo(ndata, data.Length);

//3.string和byte[]转换
string str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
//string转byte[]:
byte[] byteArray1 = System.Text.Encoding.Default.GetBytes(str);
//byte[] 转string:
string str1 = System.Text.Encoding.Default.GetString(byteArray1);
//string转ASCII byte[]:
byte[] byteArray2 = System.Text.Encoding.ASCII.GetBytes(str);
//ASCII byte[] 转string:
string str2 = System.Text.Encoding.ASCII.GetString(byteArray2);

//4.字符串拆分数组
string a = "A|B|C|D";
string[] a1 = a.Split('|');

//5.Int转为16进制
int b = 58;
byte b1 = Convert.ToByte(b);

//6.byte数组截取
byte[] test = byteArray2.Skip(4).Take(3).ToArray();//从下标4开始截取长度3

//7.List转为Byte[]
List<byte> frameBytes = new List<byte>();
frameBytes.Add(0x9E);
byte[] phoneNumByte = new byte[] { 0x01, 0x03, 0x05, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00 };//定义一个数组        
for (int i = 0; i < phoneNumByte.Length; i++)
{
    frameBytes.Add(phoneNumByte[i]);
}
frameBytes = frameBytes.Concat(byteArray2).ToList<byte>();//两个list合并
//list转byte[]
byte[] transByte = frameBytes.ToArray();
//byte[]转list
List<byte> lb =transByte.ToList();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 基于WPF手写一个简单的消息对话框

    基于WPF手写一个简单的消息对话框

    消息对话框是UI界面中不可或缺的组成部分,用于给用户一些提示,警告或者询问的窗口,本文将使用WPF手写一个简单的消息对话框,感兴趣的小伙伴可以了解下
    2023-12-12
  • C# Onnx实现DIS高精度图像二类分割

    C# Onnx实现DIS高精度图像二类分割

    这篇文章主要为大家详细介绍了C# Onnx实现DIS高精度图像二类分割的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-11-11
  • C#中调用VB中Inputbox类的实现方法

    C#中调用VB中Inputbox类的实现方法

    本文主要介绍在项目中引用Microsoft.VisualBasic,间接使用VB中的各种类库的方法,或者自己创建函数,调用自定义方法,以实现InputBox相关的功能。
    2016-05-05
  • C#实现将字符串转化为日期格式的方法详解

    C#实现将字符串转化为日期格式的方法详解

    这篇文章主要为大家详细介绍了C#如何使用DateTime结构的ParseExact方法和Parse方法分别将字符串转化为日期格式,有需要的小伙伴可以了解一下
    2024-01-01
  • C# ListView双击Item事件

    C# ListView双击Item事件

    ListView没有Item的双击事件,只能通过变通的方法得到,以下是我的变通方法
    2009-09-09
  • 判断一个整数是否是2的N次幂实现方法

    判断一个整数是否是2的N次幂实现方法

    下面小编就为大家分享一篇判断一个整数是否是2的N次幂实现方法,实例简洁,具有很好的参考价值。希望对大家有所帮助
    2017-11-11
  • C#/VB.NET 给Excel添加、删除数字签名的方法

    C#/VB.NET 给Excel添加、删除数字签名的方法

    这篇文章主要介绍了C#/VB.NET 给Excel添加、删除数字签名的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • c# 委托和事件实例学习

    c# 委托和事件实例学习

    今天把委托和事件研究了一个,winForm环境下,一般的小例子都是字符界面,我为了运用一下,写了winForm
    2009-01-01
  • C# DataTable常见用法汇总

    C# DataTable常见用法汇总

    这篇文章主要介绍了C# DataTable常见用法,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下
    2020-08-08
  • C#正则表达式转义字符介绍

    C#正则表达式转义字符介绍

    正则表达式,又称正规表示法、常规表示法。这篇文章主要介绍了C#正则表达式转义字符介绍的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-07-07

最新评论