Разработчик, который с тех пор создал небольшую программу обфускации журнала, которую мне нужно преобразовать в java.Нужна помощь в преобразовании C# XOR в Java
Все символьные элементы были XOR-ен на 255, вот фрагмент кода de'obfuscation
char[] array = text.ToCharArray();
for (int i = 0; i < array.Length; i++){
char @string = array[i];
text2 += Conversions.ToString(Strings.Chr(Strings.Asc(@string)^255));
}
streamWriter.WriteLine(text2);
Мне нужно преобразовать эту Conversions.ToString(Strings.Chr(Strings.Asc(@string)^255));
от C# для Java. Проблема в том, что в java, если символ ascii> 255, кажется, не правильно декодирует символ. Вот пример:
String e = "ÃÎÌËÁßÍÏÎÌÐÏÉÐÎÌßÎÊÒÌÈÒÌÇßÓœž“ÏÑ–‘™Áß‘ŠÎÏÈÈËÑ‘ŠŒ–šÑœ’ß™ÅßÏÌÌÉ";
String sOut1 = "";
String sOut2 = "'";
char[] cArray = e.toCharArray();
for(int index = 0; index < cArray.length; index++){
int before = ((int) cArray[index]);
int after = before^255;
char s = ((char) after);
sOut1 += cArray[index];
sOut2 += Character.toString(s);
System.out.println("1: " + cArray[index] +
" 2: " + Integer.toString(before) +
" 3: " + Integer.toString(after) +
" 4: " + Character.toString(s)
);
}
System.out.println(sOut1);
System.out.println(sOut2);
Вот результат моего кода Java:
ÃÎÌËÁßÍÏÎÌÐÏÉÐÎÌßÎÊÒÌÈÒÌÇßÓœž“ÏÑ–‘™Áß‘ŠÎÏÈÈËÑ‘ŠŒ–šÑœ’ß™ÅßÏÌÌÉ
'< 134> 2013/06/13 15-37-38 < ⃣oƬƁ⃣0.⃬⃧⇝o> ⃧Ɵ10774 .⃧Ɵƭp⃬rƞ.Ƭo⃦ p⇝
Спасибо за помощь и любую помощь.
Что такое '' Strings' и Conversions'? Это не похоже на типы фреймов ... –
Возможно, вы ищете String.getBytes («ISO-8859-1») и новую строку (байт [], «ISO-8859-1») –