字符与Unicode码相互转换器【Java】

     SWT下载地址 

一、布局组件(SWT)

二、赋予按钮命令

创建codeButton_ucharButton_action方法分别给予btnNewButtonbtnNewButton_1

codeButton_u方法代码:

protected void codeButton_u(SelectionEvent e) {
		String getText = text.getText();  //获取组件text的内容并赋予给getText
		StringBuffer unicode = new StringBuffer();
		for(int i = 0; i < getText.length(); i++) {
			char c = getText.charAt(i);
			unicode.append("\\u" + Integer.toHexString(c));
		}
		text_1.setText(unicode.toString());//输出到组件text_1
	}

 Tips: ●StringBuffer类可修改字符串。

           length():获取字符串长度。

           charAt(int index):返回位于字符串的指定索引处的字符。 

              如:  

String s = "ABCDEFG";               
char c = charAt(2);                     
System.out.println(c);  

//输出结果为C

            append():组合字符串 

             Integer.toHexString():十六进制的无符号整数形返回一个整数参数的字符串表示形式。

charButton_action方法代码:

 protected void charButton_action(SelectionEvent e) {
		    StringBuffer string = new StringBuffer();
		    String gettext = text_2.getText();
		    String[] hex = gettext.split("\\\\u");
		 
		    for (int i = 1; i < hex.length; i++) {	 		        
		         int data = Integer.parseInt(hex[i], 16); // 转换出每一个代码点
		        string.append((char) data);// 追加成string
		    }
		    text_3.setText(string.toString()); 
	 }

Tips:  split():分割“\\u”返回字符串数组形式。

          ●length:获取数组长度。

          ●Integer.parseInt(String s , 16):返回一个正整数它由十六进制数字表示. 

 三、将方法给予按钮

 在每个按钮事件里添加分别添加codeButton_u(e);charButton_action(e);

Button btnNewButton = new Button(shlunicode, SWT.NONE);
		btnNewButton.addSelectionListener(new SelectionAdapter() {
			@Override
			public void widgetSelected(SelectionEvent e) {
				codeButton_u(e);//只需添加的代码
			}
			
		});
Button btnNewButton_1 = new Button(shlunicode, SWT.NONE);
		btnNewButton_1.addSelectionListener(new SelectionAdapter() {
			@Override
			public void widgetSelected(SelectionEvent e) {
				charButton_action(e);//只需添加的代码
			}
		});

Guess you like

Origin blog.csdn.net/qq_26082507/article/details/119428816