У меня есть строка, которая составляет
35.318073; 65.741196; 57.335339; 87.758453; +0.573 ;; 42.282722; 92.314201; 64.299988; 114.331459; +0.537 ;; 89.842690; 109.230721; 111.8479; +0.644 ;;
Я использую приведенный ниже код, чтобы разделить его, а затем преобразовать в объект JSON, а затем преобразовать в двойной объект.
if (readByCount > 30)
{
var output = (new string(buff).TrimEnd('\u0000'));
Console.WriteLine(output);
var output1 = output.Split(new[] { ";;" },StringSplitOptions.RemoveEmptyEntries).Select(s => s.Split(';')).ToArray();
JToken jsonParsed = JToken.FromObject(output1);
List<double> zcoordinate = new List<double>();
double zaxis = 0.0;
double[] MediumArray = { 0,0 };
double zCoordinateMin = 0.0;
foreach (var arrayItem in jsonParsed)
{
var innerArray = arrayItem.ToObject<double[]>();
MediumArray.Append<double[]>(innerArray);
zaxis = innerArray.ElementAt<double>(4);
zcoordinate.Add(zaxis);
foreach (var item in zcoordinate)
{
zCoordinateMin = zcoordinate.Min();
}
}
for (int i = 0; i < MediumArray.Length; i++)
{
if (MediumArray.ElementAt(i) == zCoordinateMin)
{
Console.WriteLine(MediumArray[0] + MediumArray[1]);
}
}
Как видите, из-за формата входной строки for-each l oop будет выполняться трижды. Я хочу сделать свой MediumArray массивом массива, чтобы я мог запустить foreach l oop, чтобы найти MediumArray [0] + MediumArray [1] только для того массива, который имеет наименьшее значение элемента, который находится в позиции 5. (индекс 4).
Я знаю, если у меня mediumArray массив массивов, я не могу использовать для l oop, показанного в моем коде, но мне нужно использовать для каждого l oop что-то вроде:
//foreach (var item in MediumArray)
//{
// if (MediumArray.ElementAt(4) == zCoordinateMin)
// {
// Console.WriteLine(MediumArray[0] + MediumArray[1]);
// }
//}
Я пытаюсь этот код, но я получаю сообщение об ошибке из-за этой строки.
MediumArray.Append<double[]>(innerArray);
Ошибка говорит:
'double []' не содержит определения для 'Append' и лучшей перегрузки метода расширения 'Enumerable.Append (IEnumerable, double []) 'требуется получатель типа' IEnumerable '
Что я могу сделать, чтобы правильно выполнить процесс?