android - 如何使用 Retrofit 2 解析特殊字符

标签 android retrofit2 special-characters

我正在使用 Retrofit2 和 GET 方法来获取内容并将其显示在 TextView 中。在我的 json 内容中有一些特殊字符,如 ñ,当我收到响应并将其显示在 Textview 或 Log 中时,它会像这样显示。

我尝试添加具有不同内容类型的页眉,但没有成功。

    HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
       interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);

    OkHttpClient client = new OkHttpClient.Builder().addInterceptor(interceptor).build();


    retrofit = new Retrofit.Builder()
            .baseUrl(API_LINKS.Base_URL)
            .addConverterFactory(GsonConverterFactory.create())
            .client(client)
            .build();

这里是 GET 方法

@GET
Call<List<SpeakersData>> GetSpeakers(@Url String url);

这里是扬声器模型类。

  public class SpeakersData{
  @SerializedName("speaker_title")
  @Expose
  private String speaker_title;
  @SerializedName("speaker_email")
  @Expose
  private String speaker_email;
  @SerializedName("speaker_website")
  @Expose
  private String speaker_website;

它是 utf-8 或任何我不知道的解析问题。如果有人帮助我,我将不胜感激。

最佳答案

我认为问题在于您向他们展示的方式。由于这些字符不在普通字符集中,那么您可以借助 HTML 标签显示它们,如下所示:

myTextView.setText(Html.fromHtml(str));

让我知道结果。

关于android - 如何使用 Retrofit 2 解析特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54333029/

相关文章:

java - 2D渲染颜色问题

android - SSL 握手异常 : Connection closed by peer on android app

Windows 命令行和批处理文件 : potential problems with unescaped special characters in filenames?

javascript代码检查特殊字符并在其之前添加双斜杠?

jasper-reports - 如何在 JasperReports 中转义特殊字符?

android - 淡入 Android 启动 Activity

android - 使用 glShaderBinary 时出现致命信号 11 和 INVALID HEAP ADDRESS IN dlfree 错误

android - 如何通过编码将联系人收藏?

android - 改造 body 返回空

android - 改造中@Field和@Query有什么区别