【问题标题】:Decoding a ENCODING=QUOTED-PRINTABLE string in Android在 Android 中解码 ENCODING=QUOTED-PRINTABLE 字符串
【发布时间】:2013-06-02 07:36:06
【问题描述】:

我正在尝试从我的 vcard 中解码一个字符串

ADR;WORK;;ENCODING=QUOTED-PRINTABLE:;Building 723 Room 317;;Auckland;;Private Bag 92019 Auckland;New Zealand

转换成标准文本以显示在我的 Android 视图上。我已经使用 vCard 解析器解析了地址字段,使用 http://android-vcard.googlecode.com/hg/examples/ReadExample.java 中的示例。

我已按照here 的建议进行解码:使用codec 库。但是,它仍然将字符串显示为;Building 723 Room 317;;Auckland;;Private Bag 92019 Auckland;New Zealand,而不是对其进行解码。

我的解码代码:

    byte[] byteAddress = address.getBytes();
    String decodedAddress = "";
    try {
        decodedAddress = new String(QuotedPrintableCodec.decodeQuotedPrintable(byteAddress));
    } catch (DecoderException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    TextView textView4 = (TextView) findViewById(R.id.address);
    textView4.setText(decodedAddress);

【问题讨论】:

    标签: java android decode vcf-vcard


    【解决方案1】:

    这是因为 ;Building 723 Room 317;;Auckland;;Private Bag 92019 Auckland;New Zealand 的可引用打印字符串与未编码的字符串完全相同。分号; 与带引号的可打印编码无关,相反,adr 是一个结构化元素,它使用分号来表示其部分,顺序如下:

    • 邮政信箱
    • 扩展地址
    • 街道地址
    • 地区(例如城市)
    • 地区/州
    • 邮政编码
    • 国家/地区名称

    【讨论】:

      猜你喜欢
      • 2014-03-01
      • 2012-03-05
      • 2017-10-05
      • 2019-04-29
      • 2015-10-20
      • 2018-02-01
      • 1970-01-01
      • 2011-01-14
      • 2015-03-17
      相关资源
      最近更新 更多