php服务器上的时间转换成android客户端时间和unicode编码转换

本文介绍如何将PHP服务器上的秒级时间转换为Android客户端的毫秒级时间,并提供了一个示例方法。同时,还介绍了如何将网页中的Unicode编码转换为中文字符,通过解析Unicode字符串并逐个字符进行转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/**
     * php服务器上的时间转换成android客户端时间
     * php服务器上的时间是秒级别的,而android端时间转换默认是毫秒级别的
     * formatUnixTime(time, "yyyy-MM-dd");
     */
    public static String formatUnixTime(long unixTime, String format) {
        SimpleDateFormat dateFormat = new SimpleDateFormat(format);
        Date date = new Date(unixTime * 1000);
        return dateFormat.format(date);
    }

    /**
     * unicode编码转成中文
     *
     * @param dataStr
     * @return
     */
    private static String convertToChinese(String dataStr) {
        System.out.println("--------data str---->" + dataStr);
        if (dataStr == null || dataStr.length() == 0) {
            return dataStr;
        }
        int start = 0;
        int end = 0;
        final StringBuffer buffer = new StringBuffer();
        while (start > -1) {
            int system = 10;// 进制
            if (start == 0) {
                int t = dataStr.indexOf("&#");
                if (start != t)
                    start = t;
                if (start > 0) {
                    buffer.append(dataStr.substring(0, start));
                }
                if (start == -1) {
                    return dataStr;
                }
            }
            end = dataStr.indexOf(";", start + 2);
            String charStr = "";
            if (end != -1) {
                charStr = dataStr.substring(start + 2, end);
                // 判断进制
                char s = charStr.charAt(0);
                if (s == 'x' || s == 'X') {
                    system = 16;
                    charStr = charStr.substring(1);
                }
                // 转换
                try {
                    char letter = (char) Integer.parseInt(charStr, system);
                    buffer.append(new Character(letter).toString());
                } catch (NumberFormatException e) {
                    e.printStackTrace();
                }
            }

            // 处理当前unicode字符到下一个unicode字符之间的非unicode字符
            start = dataStr.indexOf("&#", end);
            if (start - end > 1) {
                buffer.append(dataStr.substring(end + 1, start));
            }
            // 处理最后面的非 unicode字符
            if (start == -1) {
                int length = dataStr.length();
                if (end + 1 != length) {
                    buffer.append(dataStr.substring(end + 1, length));
                }
            }
        }
        return buffer.toString();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值