繁体   English   中英

C#如何将字符串存储在数组中并将其转换为Ascii值

[英]C# How to store a string in an array and convert it to it's Ascii values

我是C#的新手,正在尝试创建安全的登录名。 我想做的是输入密码时,密码字符串将放入大小为8的数组中,并且该数组的每个字节都将转换为其ASCII值,并存储复制到该数组中。

我遇到诸如“无法将类型'int'隐式转换为'p []'”之类的错误的麻烦。

  public int hasher(string password, string id)
    {
        int[] p = new int[8];
        int[] a = new int[8];
        p[] = System.Convert.ToInt32(password);

        return 0;
    }

ASCII是byte数据,而不是int

byte[] bytes = Encoding.ASCII.GetBytes(password);

如果确实必须有整数:

int[] bytes = Array.ConvertAll(Encoding.ASCII.GetBytes(password), b => (int)b);

请注意,如果password任何一个非ASCII,那么您将获得未定义的输出。 例如, ? 代替一些字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM