2015-05-29 79 views
0

我需要您的帮助才能在xhtml页面中显示阿拉伯数字。目前,我将xhtml页面中的数字作为(????问号),因为当我将以下方法保存在Jdeveloper中时,阿拉伯数字将被转换为问号。这种方法将被转换英文数字来阿拉伯语和它的代码串低于:如何在xhtml中显示从java方法检索到的阿拉伯数字

String str =""; 
StringBuilder builder = new StringBuilder(); 
str = "1234566.555"; 
char[] arabicChars = {'٠','١','٢','٣','٤','٥','٦','٧','٨','٩'}; 

for(int i =0;i<str.length();i++) 
{ 
    if(Character.isDigit(str.charAt(i))) 
    { 
     builder.append(arabicChars[(int)(str.charAt(i))-48]); 
    } 
    else 
    { 
     builder.append(str.charAt(i)); 
    } 
} 

而XHTML代码是:

<?xml version='1.0' encoding='UTF-8' ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<f:view xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"> 
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" 
      xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" 
      xmlns:p="http://primefaces.org/ui"> 
     <h:body> 
<h:outputText value="#{user1.builder}"/> 
</h:body> 
</html> 
</f:view> 
+0

有你检查了这一点通过'http:// stackoverflow.com /问题/ 5316131 /转换串到另一个语言环境功能于java' – Babel

+0

[配置JDeveloper来支持UTF-8](HTTP ://文档。 oracle.com/cd/E17984_01/doc.898/e14693/appa_configuring_jdev.htm)。 – Phylogenesis

+0

我会检查他们,但什么是编码阿拉伯数字为unicode – 99maas

回答

0

此功能转换英文数字来阿拉伯语有所帮助:

StringBuilder builder = new StringBuilder(); 
private String arabicDigits=""; 

public String arabicNumners(String englishNumber) { 

String str=englishNumber; 
char[] arabicChars = {'\u0660','\u0661','\u0662','\u0663','\u0664','\u0665','\u0666','\u0667','\u0668','\u0669'}; 

           for(int i =0;i<str.length();i++) 
           { 
            if(Character.isDigit(str.charAt(i))) 
            { 
             builder.append(arabicChars[(int)(str.charAt(i))-48]); 
            } 
            else 
            { 
             builder.append(str.charAt(i)); 
            } 
           } 
           System.out.println("Number in English : "+str); 
           System.out.println("Number In Arabic : "+builder.toString()); 



    return builder.toString(); 



}