Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 根据ASCII将BigInteger转换为字符串_Java_String_Integer_Ascii - Fatal编程技术网

Java 根据ASCII将BigInteger转换为字符串

Java 根据ASCII将BigInteger转换为字符串,java,string,integer,ascii,Java,String,Integer,Ascii,是否有一种方法可以根据ASCII表将一系列整数转换为字符串。我想获取字符串的ASCII值并将其转换回字符串。比如说, 97098097=> "aba" 我真的需要一种有效的方法来获取整数,并根据其ASCII值将其转换为字符串。此方法还必须考虑以下事实:当字符串“aba”的ASCII值为970909097时,'9'前面没有零,因为'a'的ASCII值为097,而字符串“dee”的ASCII值为100101101。这意味着并非每个数字都有一个ASCII值,该值的位数是三的倍数 如果您对我要做

是否有一种方法可以根据ASCII表将一系列整数转换为字符串。我想获取字符串的ASCII值并将其转换回字符串。比如说,

97098097=> "aba"
我真的需要一种有效的方法来获取整数,并根据其ASCII值将其转换为字符串。此方法还必须考虑以下事实:当字符串
“aba”
的ASCII值为
970909097
时,
'9'
前面没有零,因为
'a'
的ASCII值为
097
,而字符串
“dee”
的ASCII值为
100101101
。这意味着并非每个数字都有一个ASCII值,该值的位数是三的倍数


如果您对我要做的事情有任何误解,请告诉我。

首先,我将在您的代码中创建某种查找表,其中包含所有ascii值及其等效字符串。然后取大整数并将其转换为字符串。然后对bigint字符串的长度进行mod of 3,以确定是否需要在前面添加1、2或不添加0。然后只需从数字前面抓取每3个整数,将其与查找表进行比较,并将相应的值附加到结果字符串中

例如:

给定
97098097
您可以将其转换为:
“97098097”

然后你用3做一个mod,得到一个值1,所以需要加上0

附加1零:
“097098097”

然后从前面每3个位置抓取一次,并与查找表进行比较:

097->a
,所以
result+=“a”

098->b
,所以
result+=“b”

097->a
,所以
result+=“a”


结果是“aba”

不需要查找表

    while (string.length() % 3 != 0)
    {
        string = '0' + string;
    }
    String result = "";
    for (int i = 0; i < string.length(); i += 3)
    {
        result += (char)(Integer.parseInt(string.substring(i, i + 3)));
    }
while(string.length()%3!=0)
{
字符串='0'+字符串;
}
字符串结果=”;
对于(int i=0;i