Я хочу преобразовать массив поплавок в байтовый массив, чтобы отправить его через сокет в сценарий Python. (Я делаю это в двигателе Unity).
Я пробовал:
float[] myArray = {0.0f, 0.0f, 0.0f};
int len = myArray.Length;
byte[] bytes = new byte[len];
int x = 0;
foreach(float f in bytes){
byte[] t = System.BitConverter.GetBytes(f);
for(int y = 0; y<4); y++){
bytes[y + x] = t[y];
x += 4;
}
}
Результат следующий:
Активы \ placeScript.cs (106,27): Ошибка CS1002 :; ожидал
Активы \ placeScript.cs (106,33): Ошибка CS1002 :; ожидал
Активы \ placeScript.cs (106,33): Ошибка CS1513:} Ожидается
Я не привык работать с C # и не могу получить его на работу ... Я также смотрел на какой-то другой код Stackoverflow, но это не помогло.
1 ответ
Попробуйте следующее:
float[] myArray = {0.0f, 0.0f, 0.0f};
int len = myArray.Length;
List<byte> bytes = new List<byte>();
foreach (float f in myArray)
{
byte[] t = System.BitConverter.GetBytes(f);
bytes.AddRange(t);
}
byte[] byteArray = bytes.ToArray();
Похожие вопросы
Новые вопросы
c#
C # (произносится как «резкий») - это высокоуровневый, статически типизированный язык программирования с несколькими парадигмами, разработанный Microsoft. Код C # обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, включая, среди прочего, .NET Framework, .NET Core и Xamarin. Используйте этот тег для вопросов о коде, написанном на C # или в формальной спецификации C #.