首页 > 编程语言 > 详细

<UnityTheGreat><013>C#字符串与二进制互相转换

时间:2021-06-17 20:16:19      阅读:26      评论:0      收藏:0      [点我收藏+]

#region Environment

Windows 10 21H1

Unity 2020.3.11f1c1 LTS

VSCode 1.57

// https://github.com/MirzkisD1Ex0/UnityTheGreat.git

#endregion


 

字符串与二进制之间互相转换并输出在Debug.Log中。

此外,字符格式需要是Default,而不能为Unicode,后者在验证工具中无法识别。

验证工具

http://tool.huixiang360.com/tools.php?id=3

原文转载自(感谢大佬)

https://www.cnblogs.com/chenyanbin/p/10193811.html

 

#region Code↓↓↓

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

using System;
using System.Text;

/// <summary>
/// 二进制与字符串之间互相转换
/// </summary>
public class BinaryConversion : MonoBehaviour
{
    private string stringTemplate = "ab!2 Convert this message.";

    private void Start()
    {
        stringTemplate = StringToBinary(stringTemplate);
        Debug.Log(stringTemplate);

        stringTemplate = BinaryToString(stringTemplate);
        Debug.Log(stringTemplate);
    }

    /// <summary>
    /// 字符串转二进制
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    private string StringToBinary(string str)
    {
        byte[] data = Encoding.Default.GetBytes(str);
        StringBuilder sb = new StringBuilder(data.Length * 8);
        foreach (byte item in data)
        {
            sb.Append(Convert.ToString(item, 2).PadLeft(8, ‘0‘));
        }
        return sb.ToString();
    }

    /// <summary>
    /// 二进制转字符串
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    private string BinaryToString(string str)
    {
        System.Text.RegularExpressions.CaptureCollection cs = System.Text.RegularExpressions.Regex.Match(str, @"([01]{8})+").Groups[1].Captures;
        byte[] data = new byte[cs.Count];
        for (int i = 0; i < cs.Count; i++)
        {
            data[i] = Convert.ToByte(cs[i].Value, 2);
        }
        return Encoding.Default.GetString(data, 0, data.Length);
    }
}

#endregion


祝好。

<UnityTheGreat><013>C#字符串与二进制互相转换

原文:https://www.cnblogs.com/mirzkisd1ex0/p/14894650.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!