对javascript不熟,请大家帮忙将以下base64加解密代码转成C#的在网上找了一些相关的方法,由于我中间还要做些处理,现在得到的结果与直接用js得到的结果不一样,所以还是请大家帮心把以下代码转换为C#后的代码吧,我好定位问题出在哪以下帖子的方法试过,无法得到我想要的结果
求救 将javascript转成c#
 //加密 
 function encode64(Str) { 
     var output = ""; 
     var chr1, chr2, chr3 = ""; 
     var enc1, enc2, enc3, enc4 = ""; 
     var i = 0; 
     do { 
         chr1 = Str.charCodeAt(i++); 
         chr2 = Str.charCodeAt(i++); 
         chr3 = Str.charCodeAt(i++); 
         enc1 = chr1 >> 2; 
         enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); 
         enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); 
         enc4 = chr3 & 63; 
         if (isNaN(chr2)) {enc3 = enc4 = 64;} else if (isNaN(chr3)) {enc4 = 64;} 
         output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4); 
         chr1 = chr2 = chr3 = ""; 
         enc1 = enc2 = enc3 = enc4 = ""; 
     } while (i < Str.length); 
     return output; 
 } 
 //解密 
 function decode64(Str) { 
     var output = ""; 
     var chr1, chr2, chr3 = ""; 
     var enc1, enc2, enc3, enc4 = ""; 
     var i = 0; 
     var base64test = /[^A-Za-z0-9\+\/\=]/g; 
     if (base64test.exec(Str)){} 
     Str = Str.replace(/[^A-Za-z0-9\+\/\=]/g, ""); 
     do { 
         enc1 = keyStr.indexOf(Str.charAt(i++)); 
         enc2 = keyStr.indexOf(Str.charAt(i++)); 
         enc3 = keyStr.indexOf(Str.charAt(i++)); 
         enc4 = keyStr.indexOf(Str.charAt(i++)); 
         chr1 = (enc1 << 2) | (enc2 >> 4); 
         chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); 
        chr3 = ((enc3 & 3) << 6) | enc4; 
         output = output + String.fromCharCode(chr1); 
         if (enc3 != 64) {output = output + String.fromCharCode(chr2);} 
         if (enc4 != 64) {output = output + String.fromCharCode(chr3);} 
         chr1 = chr2 = chr3 = ""; 
         enc1 = enc2 = enc3 = enc4 = ""; 
     } while (i < Str.length); 
    return output; 
 } 

解决方案 »

  1.   

    给你一片参考文章
    http://www.cnblogs.com/cuihongyu3503319/archive/2009/07/03/1516269.html
      

  2.   

    我不是没在网上搜过,也不是没有自己试着转换过,只不过对javascript语法不熟,有些代码不知道该如何转javascript的我已经有现成可用的代码,我现在只能用转换后的C#代码来定位问题出在哪,所以各位给我发链接,参考这个参考那个的,只要是javascript的实在是没什么意义C#的也请帮忙给下转换后的,类似于我顶楼给的那个链接里的代码,因为不是转换的,也无法定位出问题在哪