Я хочу преобразовать этот фрагмент кода в С#:
var local1:ByteArray= new ByteArray();
var auth:String = root.loaderInfo.parameters.auth as String;
var key0:String = root.loaderInfo.parameters.key0 as String;
var key1:String = root.loaderInfo.parameters.key1 as String;
var key2:String = root.loaderInfo.parameters.key2 as String;
var key3:String = root.loaderInfo.parameters.key3 as String;
local1.writeUnsignedInt(parse(auth));
local1.writeUnsignedInt(parse(key0));
local1.writeUnsignedInt(parse(key1));
local1.writeUnsignedInt(parse(key2));
local1.writeUnsignedInt(parse(key3));
trace(local1)
Вы видите, как я напрямую печатаю массив байтов, не преобразовывая его в строку. Как вы можете это сделать в С#? Предположим напечатать что-то вроде этого: TV~ 3 R ji
Если массив содержит то, что может быть интерпретировано как коды символов, вы можете декодировать байты в текст. Например:
string localText = Encoding.Default.GetString(local1);
Используемая кодировка будет зависеть от того, как текст был сначала преобразован в байты.
Вы можете использовать MemoryStream
и BinaryWriter
для размещения целых чисел в массиве. Пример:
string auth = "1"; // example data, would come from your object
string key0 = "2";
byte[] local1;
using (MemoryStream m = new MemoryStream()) {
using (BinaryWriter w = new BinaryWriter(m)) {
w.Write(Int32.Parse(auth));
w.Write(Int32.Parse(key0));
}
local1 = m.ToArray();
}
foreach(var g in local1)
{
Console.WriteLine((char)g);
}