Maison >Java >javaDidacticiel >Comment résoudre le problème selon lequel la base de données de traitement Java ne prend pas en charge les émoticônes emoji

Comment résoudre le problème selon lequel la base de données de traitement Java ne prend pas en charge les émoticônes emoji

PHPz
PHPzavant
2023-05-10 17:34:131454parcourir

Le codage général de la base de données est utf8, utf8 ne prend pas en charge le stockage des émoticônes. Lorsque le pseudo WeChat stocké contient des émoticônes, des caractères tronqués apparaîtront :

1 Mettez à niveau la base de données MySQL vers la version 5.5 ci-dessus, utf8 est remplacé par utf8mb4. .Les caractères de utf8mb4 peuvent contenir jusqu'à 4 octets, ce qui peut stocker des émoticônes. Cette méthode peut échouer :

2. Filtrez les émoticônes dans le code Java, ce qui suit est un outil. classe pour filtrer les émoticônes :

import java.util.regex.Matcher;import java.util.regex.Pattern;

public class EmojiUtil {

public static String replace(String input) {

if (!StringUtil. isEmpty(input)) {

String patternStr = "[^\u0000-\uFFFF]";

Pattern pattern = Pattern.compile(patternStr, Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE);

Matcher matcher = pattern.matcher); (entrée);

input = matcher.replaceAll("");

}

return input;

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer