如何把如下c++代码转换成java代码,谢谢。

[复制链接]
查看11 | 回复1 | 2011-8-10 15:49:53 | 显示全部楼层 |阅读模式
unsigned long        Base64Decode(unsigned char * in)
{
        unsigned char c, pk[4];
        unsigned longL1, i, j, k, eq;
       
        L1 = strlen((char *)in);
        i= j = eq = 0;
        while(i = 'A' && c = 'a' && c = '0' && c <= '9')
                                        pk[k] = c + 4;                // - '0' + 52
                                else if (c == '\r' || c == '\n')
                                {
                                        k --;
                                        i ++;
                                }
                                else
                                {
                                        return 0;
                                }
                        }
                        k ++;
                }
                in[j ++] =4 * pk[0]
+ pk[1] / 16;
                in[j ++] = 16 * (pk[1] - 16 * (pk[1] / 16)) + pk[2] / 4;
                in[j ++] = 64 * (pk[2] - 4* (pk[2] / 4))+ pk[3];
                i += 4;
        }
        in[j - eq] = 0;
        return (j - eq);
}

回复

使用道具 举报

千问 | 2011-8-10 15:49:53 | 显示全部楼层
把关键几个地方改一下就可以了,比如声明与初始化,其他是一样的,而且java是纯面向对象的,所以是在一个类中进行的,因此要把代码放到一个类中,例如:public class Test{public static void main(String[] args){long base64Decode(char * in){...}}}当然数据类型也是不一样的,要改,例如,因为java基本数据类型中没有unsigned long(无unsigned关键词)只要改掉这些,就没有什么问题了,具体的改代码的活自己来吧~...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行