Maison >développement back-end >Problème PHP >Android ne peut pas analyser les données JSON de PHP

Android ne peut pas analyser les données JSON de PHP

王林
王林original
2019-10-21 13:47:002516parcourir

Android ne peut pas analyser les données JSON de PHP

Raison de l'erreur :

Problème d'en-tête de nomenclature. Le côté serveur est PHP et les données de transfert renvoyées '{' sont précédées d'un en-tête de nomenclature. Lorsque Java lit l'en-tête, il lit l'en-tête directement en tant que contenu du fichier, puis une erreur se produit.

Qu'est-ce que l'en-tête de nomenclature ?

L'en-tête BOM est également appelé signature UTF-8. En fait, la nomenclature UTF-8 n'a aucun effet sur UFT-8. Il s'agit d'une nomenclature ajoutée pour prendre en charge UTF-16 et UTF-. 32.

La signification de la signature de nomenclature est d'indiquer à l'éditeur quel encodage le fichier actuel utilise. Cependant, bien que la nomenclature ne soit pas affichée dans l'éditeur, elle produira une sortie, tout comme une ligne vierge supplémentaire. Il s'agit d'une chaîne de caractères masqués utilisée pour permettre aux éditeurs tels que le Bloc-notes d'identifier si le fichier est codé en UTF-8.

Solution :

les clients Java, Android, etc. peuvent filtrer la nomenclature via le code, puis l'analyser.

/**
 * 去除bom报头
 */
public static String formatString(String s) {
    if (s != null) {
          s = s.replaceAll("\ufeff", "");
    }
    return s;
}

Tutoriel recommandé : Tutoriel vidéo PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn