【VS2019 C#】各种数据类型转化

Myth丶恋晨 2021-09-21 03:14 428阅读 0赞
  1. byte[] 转 string

    byte[] buf = new byte[4];
    string ret = System.Text.ASCIIEncoding.Default.GetString(buf);

或者简单点:

  1. char TheCh = (char)buf[i];
  2. string ret = TheCh;

2.string 转 byte[]

  1. string sendValue;
  2. byte[] array = System.Text.ASCIIEncoding.Default.GetBytes(sendValue);

3.u32 装 string

  1. string u32_to_string(UInt32 data)
  2. {
  3. byte[] buf = new byte[4];
  4. buf[0] = (byte)data;
  5. buf[1] = (byte)(data >> 8);
  6. buf[2] = (byte)(data >> 16);
  7. buf[3] = (byte)(data >> 24);
  8. string ret = System.Text.ASCIIEncoding.Default.GetString(buf);
  9. return ret;
  10. }

4.string转换成int型
int intA = 0;
1.intA =int.Parse(str);
2.int.TryParse(str, out intA);
3.intA = Convert.ToInt32(str);

C# int与string转化

1、int—>string

  1. 1 int a = 15;
  2. 2 string s1 = a.ToString();
  3. 3 string s2 = Convert.ToString(a);

2、string —>int

  1. 1 string s = "18";
  2. 2 int a1 = int.Parse(s);
  3. 3 int a2;
  4. 4 int.TryParse(s, out a2);
  5. 5 int a3 = Convert.ToInt32(s);

c# double转string保留两位小数

double tmp = 3.11415;
string s = tmp.toString(“f2”); 这样就是保留两位小数

把内存二进制数据转为double int 等

当用C#写上位机时,经常要与下位机通信,通信协议传来的数据都是byte[] 类型的二进制数据,C语言中,可以很简单地用memcpy来强制转换成相关数据,C#中就没这么方便,可以这样写,如下:

  1. int Acceleration_Max_speed = BitConverter.ToInt32(buf, 0);
  2. double Acceleration_acc_Max = BitConverter.ToDouble(buf, 8);
  3. double Acceleration_Max_rpm = BitConverter.ToDouble(buf, 16);

发表评论

表情:
评论列表 (有 0 条评论,428人围观)

还没有评论,来说两句吧...

相关阅读

    相关 c各种数据类型所占字节

    c语言的数据类型分为两个大类:第一类是基本数据类型,包括整型、浮点型和字符型,第二类是构造数据类型,包括数组、结构、联合和枚举。 下面总结下基本数据类型所需的内存字节数。