我有一个整数数组:
arr = [83,107,57,74,84,103,61,61];
我需要通过函数传递它以获取消息(字符串)。
String msg = f(arr);
仅给出f是二进制到文本编码功能。
如何获取字符串。我试着在网上搜索很多东西。甚至把char取值为ascii,但它没有用。 61给出' ='哪个不能进入消息。 你们中的任何人可以帮忙吗?
答案 0 :(得分:0)
这是C#
中的一个例子class Program
{
static void Main(string[] args)
{
int[] nx = StringToIntArray(IntArrayToString(new int[] { 1, 2, 3 }));
foreach (int n in nx)
{
Console.WriteLine(n);
}
Console.ReadKey();
}
static string IntArrayToString(int[] nx)
{
byte[] bx = new byte[nx.Length * 4];
for (int i = 0; i < nx.Length; i++)
{
BitConverter.GetBytes(nx[i]).CopyTo(bx, i * 4);
}
return Convert.ToBase64String(bx);
}
static int[] StringToIntArray(string str)
{
byte[] bx = Convert.FromBase64String(str);
int len = bx.Length / 4;
int[] nx = new int[len];
for (int i = 0; i < len; i++)
{
nx[i] = BitConverter.ToInt32(bx, i * 4);
}
return nx;
}
}