2012-07-23 48 views
0

嗨。我正在编写一个示例应用程序来在Android中显示泰卢固语字体。我能够读取文件并在android中显示内容。但问题是我在泰卢固语中听到了错误的发音。如何将UTF-8文件的内容转换为ASCII以在android中显示?

任何人都可以帮助我比较编码泰卢固字符和纠正错误的发音。请找到下面的代码。

感谢您的帮助。

public class TeluguTestAppActivity extends Activity { 
    float textsize = 12; 
    TextView tv; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     /*Incorporate font file to convert into Telugu fonts */ 
     Typeface tf = Typeface.createFromAsset(getAssets(), 
         "fonts/DroidSansRegionalAAD.ttf"); 

     tv = (TextView) findViewById(R.id.myFont); 
     tv.setTypeface(tf); 
     String st = readText(); 
     tv.setText(st);   
    } 

    private String readText(){ 
     StringBuffer sb = null; 
     BufferedReader bufReader = null; 
      /* Reading txt file which is placed in raw folder. 
      This contains telugu information. */ 
     InputStream inputStream = getResources().openRawResource(R.raw.ad1); 
     try { 
      bufReader = new BufferedReader(new InputStreamReader(
              inputStream, "UTF-8")); 

     sb = new StringBuffer(); 
     String line = null; 

      while((line = bufReader.readLine()) != null){ 
       sb.append(line + "\n"); 
      } 
     } catch (IOException e1) { 
      // TODO Auto-generated catch block 
      e1.printStackTrace(); 
     } 
     return sb.toString(); 
    }   
} 
+0

UTF-8>什么错误? – 2012-07-23 17:57:23

+0

文本文件没问题。只有问题是,由于数据属于国际语言,因此在Android设备中显示时出现错误的发音。 – rgeddam 2012-07-23 18:07:10

+0

哦,没有口头。你需要它是国际语言的UNIcode。 – 2012-07-23 18:08:32

回答

-1

这里有一个问题:bufReader = new BufferedReader(new InputStreamReader( inputStream, "UTF-8")); ASCII没有为国际语言的支持,所以,您是从指定的“合音”文件丢失数据。尽量不要指定编码或使用UTF-16。

编辑:对于你指定的语言它不。 编辑:是的,我用ASCII来混淆UTF-8。尽管如此,仍然无法运作。因为问题说他想转换为ASCII。

+0

我也通过创建不同的文件来尝试UTF-16。还是同样的问题。没有变化。由于我没有足够的声誉,无法发布屏幕截图。 012f bufReader = new BufferedReader(new InputStreamReader(inputStream,“UTF-16”)); – rgeddam 2012-07-23 18:21:52

+0

但是,您的文件是UTF-16吗? – 2012-07-23 18:24:39

+0

如果您接受了刺激(“ఆదియందుదేవుడుభూమ్యాకాశములనుసృజించెను”),结果应该与移动设备中的结果一样。 – rgeddam 2012-07-23 18:27:50