Je suis un peu déconcerté quand il s'agit de convertir ce javascript en C# ...Conversion de JavaScript en C#
Toute aide serait appréciée!
Voici le javascript:
function d(strInput) {
strInput = decoder(strInput);
var strOutput = "";
var intOffset = (key + 112)/12;
for (i = 4; i < strInput.length; i++) {
thisCharCode = strInput.charCodeAt(i);
newCharCode = thisCharCode - intOffset;
strOutput += String.fromCharCode(newCharCode)
}
document.write(strOutput)
}
Et voici ma tentative de convertir en C#. Il travaille de temps en temps, mais la plupart du temps pour les nombres négatifs comme la clé ...
public string decode(int key, string data)
{
int i;
string strInput = base64Decode(data);
StringBuilder strOutput = new StringBuilder("");
int intOffset = (key + 112)/12;
for (i = 4; i < strInput.Length; i++)
{
int thisCharCode = strInput[i];
char newCharCode = (char)(thisCharCode - intOffset);
strOutput.Append(newCharCode);
}
return strOutput.ToString();
}
Actuellement, il produit les éléments suivants:
(int key = 212, string data = "U0lra36DfImFkImOkImCW4OKj4h8hIdJfoqI")
Output = {c¬a¬¬¬¬¬¬¬¬@¬¬¬¬a¬¬.c¬¬}
(int key = -88, string data = "T1RXYmV0cHFkZ3R1MzQ1Ng==")
Output = {crnobers1234}
Quelle sortie est correcte et laquelle ne l'est pas? Est-ce que celui avec la clé négative est correct? Les données d'entrée pour le premier exemple ne semblent pas correctes. Quelle était la chaîne originale non codée? –
Ceci est une version javascript fonctionnant: http://bypass.rd.to/decoder.php – E3pO
Que fait la fonction "décodeur" appelée dans la version Javascript? Je suppose qu'il est moyen de décoder une chaîne Base64 basée sur votre version C#? – Carson63000