Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да предадете ArrayList на друга дейност и да го конвертирате в двойно

Данните, които извличате от MySQL не е в правилния JSON формат и не може да се преобразува в масив от двойници. JSONArray е колекция от JSONObject с. В момента получавате това, което изглежда като един Array форматиран като [9.32, 5.22, 10.201 ... ]

Това, което трябва да имате, е JSONArray който съдържа JSONObjects

points:[{1:9.32},{2:5.22}]

След това можете да извлечете JSONObjects от JSONArray и просто достъп до числовите стойности директно

JSONArray points = new JSONArray(pointsString);
JSONObject firstPoint = points.getJSONObject(1);
double value = firstPoint.getDouble("1");

можете лесно да преобразувате това в цикъл за изпълнение на цял JSONArray на стойности

Актуализация – проблеми с PHP

Вашият низ не се връща в правилния JSON формат, защото изхвърляте целия резултат, ако вашата заявка е в един масив. Опитайте нещо подобно:

$outerObject = array();
$result = $query->fetchAll(PDO::FETCH_ASSOC);
$numResult = count($result);
for($i = 0; $i < $numResult; $i++){
     $indexDouble = result[$i];
     $innerObject = array();
     $innerObject['double'] = $indexDouble;
     $outerObject[] = $innerObject;
}
$json = array();
$json['metoxes'] = $outerObject;
echo json_encode($json);

Първо бих тествал това, но идеята е, че трябва да създадете това, което ще бъде JSONArray и след това добавете към него по-малки вътрешни масиви, които ще станат JSONObject . Когато json_encode, ще имате масив [] с обекти {double:some_number}. За да извлечете, всичко, което трябва да направите, е да преминете през JSONArray и да получите всеки двоен, свързан с ключовата стойност double. Ще работи нещо подобно:

JSONArray fullArray = JSONArray(stringInput);
int length = fullArray.length;
for(int i = 0; i < length; i++){

    double target = fullArray.getJSONObject(i).getDouble("double");
    //do something with the double
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да изпълним .sql скрипт от bash

  2. Как да отстраним грешка в заявка в extbase?

  3. Как да синхронизирате данни между две таблици в различни бази данни (MYSQL), работещи на различни сървъри

  4. Как да възстановите/пресъздадете базата данни по подразбиране 'mysql' на mysql

  5. HTML форма променя echo'ed променливи, но НЕ база данни?