⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qqweatherutil.java

📁 cwbbs 云网论坛源码
💻 JAVA
字号:
package com.redmoon.forum.miniplugin.weather;import java.net.URL;import java.net.HttpURLConnection;import java.io.BufferedReader;import java.io.InputStreamReader;import org.apache.log4j.Logger;import java.util.regex.Pattern;import java.util.regex.Matcher;import cn.js.fan.util.ErrMsgException;import cn.js.fan.web.Global;public class QQWeatherUtil {    Logger logger = Logger.getLogger(WeatherUtil.class.getName());    public QQWeatherUtil() {    }        public String gather(String link) {        String str = "";        try {            URL url = new URL(link);            HttpURLConnection huc = (HttpURLConnection) url.openConnection();                        String type = huc.getContentType();            String charset = "utf-8";            int index = type.indexOf("charset=");            if (index != -1) {                index = index + 8;                charset = type.substring(index).trim();            } else                charset = "gb2312";            BufferedReader reader = new BufferedReader(                    new InputStreamReader(huc.getInputStream(), charset));            String line = reader.readLine();            while (line != null) {                str += line;                line = reader.readLine();            }            reader.close();            huc.disconnect();        } catch (Exception e) {            logger.error("gather: " + e.getMessage());        }        return str;    }    public String getWeather() {        String content = gather("http://weather.news.qq.com/inc/ss59.htm");        return parseWeatherQQ(content);    }    public String parseWeather163(String content) {        String patternStr = "", replacementStr = "";        Pattern pattern;        Matcher matcher;        String str = "";                patternStr = "<div class=\\\"wetMain\\\">(.*)</div>";        pattern = Pattern.compile(patternStr, Pattern.DOTALL);        matcher = pattern.matcher(content);                if (matcher.find()) {            str = matcher.group(1);                        str = str.replaceAll("\\.\\./images",                                 "http://mimg.163.com/tianqi/images");                        str = str.replaceAll("detail\\(\\);", "");            str = str.replaceAll("tomorrow\\(\\);", "");        }        return str;    }    public String parseWeatherQQ(String content) {        String patternStr = "";        Pattern pattern;        Matcher matcher;        String str = "";        patternStr = "<table width=\\\"189\\\" border=\\\"0\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\" background.*?height=\\\"3\\\"></td></tr>";                pattern = Pattern.compile(patternStr, Pattern.DOTALL);        matcher = pattern.matcher(content);                        if (matcher.find()) {            str = matcher.group(0);            str = str + "</table>";                        str = str.replaceAll("width=\\\"189\\\"",                                 "width=100%");                        str = str.replaceAll("background=\"/images/r_tembg2.gif\"", "");                        str = str.replaceAll("background=\"/images/r_tembg4.gif\"", "");                        str = str.replaceAll("background=\"/images/r_tembg5.gif\"", "");                        str = str.replaceAll("width=\"72\"", "width=50%");                        str = str.replaceAll("width=\"117\"", "width=50%");                        str = str.replaceAll("<tr><td colspan=\"2\"><img src=\"/images/r_tembg1.gif\" width=100% height=\"6\"></td>", "");                        str = str.replaceAll("<tr><td colspan=\"2\"><img src=\"/images/r_tembg3.gif\" width=100% height=\"3\"></td></tr>", "");                                                str = str.replaceAll("/images", "http://weather.news.qq.com/images");        }        return str;    }    public String parseWeather(String content) {        String patternStr = "";        Pattern pattern;        Matcher matcher;        String str = "";                        patternStr = "<table width=\\\"200\\\".*      </table></td>";        pattern = Pattern.compile(patternStr, Pattern.DOTALL);        matcher = pattern.matcher(content);                if (matcher.find()) {            str = matcher.group(0);                        str = str.replaceAll("/weathericons",                                 "http://weather.china.com.cn/weathericons");            str = str.replaceAll("/city/58248_full.html",                                 Global.getRootPath() + "/forum/miniplugin/weather/58248_full.htm");                        str = str.replaceAll("<table width=\\\"200\\\"", "<table width=172");                        str = str.replaceAll("<td height=\"20\">", "<td height=0>");                                    str = str.replaceFirst("<td width=\"29\" align=\"center\"><img src=\"/images/t_2.gif\" width=\"19\" height=\"13\">",                                   "<td width=1>");                        str = str.replaceFirst("未来天气", "");            str = str.replaceFirst("<td width=\\\"65\\\"", "<td width=15");            str = str.replaceFirst("<td width=\\\"67\\\"", "<td ");            str = str.replaceFirst("<td width=\\\"73\\\"", "<td ");        }        return str;    }    public void createIncFile(String content, String fullcontent) throws            ErrMsgException {        String str = "";        str +=                "<%@ page pageEncoding='utf-8' contentType='text/html;charset=utf-8' %>";        str += content;        cn.js.fan.util.file.FileUtil fu = new cn.js.fan.util.file.FileUtil();        fu.WriteFileUTF8(Global.realPath + "forum/miniplugin/weather/58248.htm",                         str);        str =                "<%@ page pageEncoding='utf-8' contentType='text/html;charset=utf-8' %>";        str += "<style>TD {FONT-SIZE: 9pt;}</style>";        str += "<table align=center><tr><td>" + fullcontent +                "</td></tr></table>";        fu.WriteFileUTF8(Global.realPath +                         "forum/miniplugin/weather/58248_full.htm", str);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -