「java去除表情」JAVA 表情包

博主:adminadmin 2023-01-10 20:03:06 764

今天给各位分享java去除表情的知识,其中也会对JAVA 表情包进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java字符串如何替换表情字符

String a = str.replaceAll(":0:", "img src='/img/0.jpg'/");

String b = a.replaceAll(":1:", "img src='/img/1.jpg'/");

String c = b.replaceAll(":2:", "img src='/img/2.jpg'/");

str = c;

或者

str = str.replaceAll(":0:", "img src='/img/0.jpg'/").replaceAll(":1:", "img src='/img/1.jpg'/").replaceAll(":2:", "img src='/img/2.jpg'/");

Java关于聊天表情的问题

在另一个里给你回答了。光标的问题

-----------------------------------------------------------------------------------

jfp.insertIcon(icon);

插图时,你的光标在那里,就从那里开始插图。

可以用setCaretPosition(int ) 方法来控制光标的位置。

下边是我的测试代码。

----------------------------------------------------------------------------------------------------------

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextPane;

public class TestApp extends JFrame implements ActionListener {

JTextPane textPane = null;

public TestApp() {

setDefaultCloseOperation(EXIT_ON_CLOSE);

setLocationRelativeTo(null);

setSize(400, 300);

setResizable(false);

getContentPane().setLayout(null);

JButton btnNewButton = new JButton("New button");

btnNewButton.addActionListener(this);

btnNewButton.setBounds(12, 10, 91, 21);

getContentPane().add(btnNewButton);

JScrollPane scrollPane = new JScrollPane();

scrollPane.setBounds(12, 41, 370, 221);

getContentPane().add(scrollPane);

textPane = new JTextPane();

textPane.setText("f16/df16/asdf;16/");

scrollPane.setViewportView(textPane);

setVisible(true);

}

public static void main(String[] args) {

new TestApp();

}

public void actionPerformed(ActionEvent e) {

// textPane.setCaretPosition(textPane.getText().length());

// ImageIcon icon = new ImageIcon("D:\\1.jpg");

// textPane.insertIcon(icon);

explainPicInfo(new StringBuffer(textPane.getText()), textPane);

}

private void explainPicInfo(StringBuffer message, JTextPane jfp) {

// 解码

int start = 0;

int end = 0;

String strmessage = message.toString();

System.out.print("*****" + strmessage);

int pos = 0;

for (int i = 0; i strmessage.length(); i++) {

if (strmessage.charAt(i) == '') {

start = i;

} else if (strmessage.charAt(i) == '/') {

end = i;

// String num = strmessage.substring(start + 1, end);

// System.out.print("*****" + num);

// int suquence = Integer.parseInt(num);

// System.out.println(suquence);

// URL imgUrl = this.getClass().getResource(

// "/biaoqing/" + suquence + ".jpg");

// System.out.println("/biaoqing/" + suquence + ".jpg");

ImageIcon icon = new ImageIcon("D:\\cover.jpg");

jfp.setCaretPosition(start + pos);

System.out.println("((((" + start + pos);

System.out.println(")))" + pos);

// pos为从文本区获得已有文本的长度

// jfp为要放表情的JTestPane

// deleteSubString(message, start, end);

// message = message.delete(start, end);

jfp.insertIcon(icon);

pos++;

System.out.println("success to insert");

}

}

}

}

去掉16/文字的代码.

---------------------------------------------------------------------------------------------

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.ArrayList;

import java.util.List;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextPane;

public class TestApp extends JFrame implements ActionListener {

JTextPane textPane = null;

public TestApp() {

setDefaultCloseOperation(EXIT_ON_CLOSE);

setLocationRelativeTo(null);

setSize(400, 300);

setResizable(false);

getContentPane().setLayout(null);

JButton btnNewButton = new JButton("New button");

btnNewButton.addActionListener(this);

btnNewButton.setBounds(12, 10, 91, 21);

getContentPane().add(btnNewButton);

JScrollPane scrollPane = new JScrollPane();

scrollPane.setBounds(12, 41, 370, 221);

getContentPane().add(scrollPane);

textPane = new JTextPane();

textPane.setText("f16/df16/asdf;16/asdf;16/asdf;16/");

scrollPane.setViewportView(textPane);

setVisible(true);

}

public static void main(String[] args) {

new TestApp();

}

public void actionPerformed(ActionEvent e) {

explainPicInfo(new StringBuffer(textPane.getText()), textPane);

}

private void explainPicInfo(StringBuffer message, JTextPane jfp) {

// 解码

jfp.setText("");

int start = 0;

int end = 0;

int length = 0;

int len = 1;

String strmessage = message.toString();

ListInteger indexs = new ArrayListInteger();

int mesgStart = 0;

for (int i = 0; i strmessage.length(); i++) {

if (strmessage.charAt(i) == '') {

start = i;

} else if (strmessage.charAt(i) == '/') {

end = i;

indexs.add(start - length);

String mesg = message.substring(mesgStart, start);

jfp.setText(jfp.getText() + mesg);

mesgStart = end + 1;

length = (end - start + 1) * (len++);

}

}

for (int i = 0; i indexs.size(); i++) {

int pos = indexs.get(i) + i;

if (pos jfp.getText().length()) {

pos = jfp.getText().length();

}

jfp.setCaretPosition(pos);

ImageIcon icon = new ImageIcon("D:\\cover.jpg");

jfp.insertIcon(icon);

}

}

}

jsp论坛中发贴时帖子中带有表情时表情处理问题(java处理)

统一把表情放在一个地方,然后建立对应的命名映射表就好了,比如key是"{:2_26:}",对应的value是“weixiao.png”,这样的话,用户成功发送以后,自动加上图片的路径,这样表情就出来了。选择也一样,当用户选择a href="../weixiao.png" onclick="chose('weixiao')"/a这张表情时,再通过chose()方法来处理你要显示什么样的字符等等

java如何处理emoji表情,并存入数据库

这个很简单呀 你把数据库或者对应表/字段的编码格式从utf8改成utf8mb4就可以存储emoji表情了,utf8对应的字节数不够所以会报错,mysql8默认的就是utf8mb4,可以了解下

java替换表情符号 求正则表达式替换

查找正则表达式

\[(微笑|撇嘴|色|发呆)\]

替换为

img src='.../imag/$1.png'/

Pattern.compile("\\[(微笑|撇嘴|色|发呆)\\]").matcher(text).replaceAll("img src='.../imag/$1.png'/")

注意replaceAll中 不知道有没有字符是 Java中需要转义的字符,如果有加上转义。

关于java去除表情和JAVA 表情包的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。