android中如何处理“ \\ uxxxx”的TextView设置文本失败?

时间:2019-04-04 09:53:30

标签: android encoding

我的应用程序中有一个TextView,用于存放从抓取中获取的数据。 数据是一些中文单词(unicode),视图显示的是unicode而不是这些中文单词。

我发现问题是由“ \ uxxxx”和“ \ uxxxx”引起的。系统返回值“ \ uxxxx”。

例如,如果我对字符串进行硬编码,则可以显示中文单词

@Override
protected void onCreate(Bundle savedInstanceState)
{
   super.onCreate(savedInstanceState);
   setContentView(R.layout.first_activity);

   if(savedInstanceState!=null) {

      int lastSavedPosition = // Your logic 
      createSecondFragment(lastSavedPosition )

   }


}

我尝试比较不同的地方:

Title.setText("\u4F60\u597D\u55CE");
\\ the chinese words can show properly as "你好嗎"

Title.setText("\\u4F60\\u597D\\u55CE");
\\ the words show as "\u4F60\u597D\u55CE"

我尝试过

Log.i("setTitle", String.valueOf(Title.equals("\u4F60\u597D\u55CE")));
//returned false but should be true


Log.i("setTitle", String.valueOf(Title.equals("\\u4F60\\u597D\\u55CE")));
//returned true but should be false

这些都在我的比较代码中提供了相同的结果

我什至尝试过

Title.replace("\\\\u","\\u");
Title.replace("\\\\","\\");

我仍然无法获得想要的结果。

只想问问我有什么办法可以在TextView.setText()中用unicode显示汉字吗?

1 个答案:

答案 0 :(得分:0)

在将所有\\u设置为Textview之前,只需将所有\u替换为 <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>3.0-alpha-1</version> <scope>provided</scope> </dependency>