科帮网

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 项目源码 > 小Q机器人之大黄鸡java版本
总共48087条微博

动态微博

查看: 4062|回复: 5

小Q机器人之大黄鸡java版本

[复制链接]
admin    

1244

主题

544

听众

1万

金钱

管理员

  • TA的每日心情

    2021-2-2 11:21
  • 签到天数: 36 天

    [LV.5]常住居民I

    管理员

    跳转到指定楼层
    楼主
    发表于 2014-10-18 09:11:12 |只看该作者 |倒序浏览
    小Q机器人之大黄鸡java版本:自定义回复、查询天气、调用小黄鸡、、、版本采用webQQ3.0协议
    & V9 I1 r# F! Y" y, a登陆类:Login.java# J5 Z* |9 j8 {
    1. public class Login {) V3 z5 [, }* C: @% S9 C
    2.     public static void main(String[] args) {. Q7 B9 z' F7 P5 Z2 H+ A
    3.         //获取配置
      8 K4 h1 y0 j5 K: _* M7 p
    4.         Config config = Config.getInstance();
      & G/ ^: y- O9 {; O6 {
    5.         String qqName = config.getQQ();
      ' E5 z' G, l# R# x: d
    6.         String password = config.getPassword();
      1 J: A! `; u( o' B7 }
    7.         WebQQClientStart qq = new WebQQClientStart(qqName, password);
      5 J0 x+ I( h2 ?8 ^
    8.         //登录4 o# \  W3 k  o% H- |3 _
    9.         qq.login();- n9 L- }& X7 Y3 d  c% G8 k
    10.     }
      4 ^" F" u* V0 o8 r
    11. }
    复制代码
    配置QQ号密码Config.java:
    . H9 ?  E; _$ f/ _, G! A7 p
    1. public class Config {
      . S/ |- l& j0 B; v
    2. 4 P( W  B2 E' f- H
    3.     private static class ConfigInstance {
      + ]4 d- F3 i. `% R; R, E  ~( T

    4. ; ^2 m- d1 B. o
    5.         private static final Config INSTANCE = new Config();
      * s* L6 w- w# e- a
    6.     }
      # P/ ^! m7 g+ E& C

    7. 3 g# m% n9 U6 S8 Q& h3 \+ d
    8.     /**
      8 }) `" X% {. G# l% S- E  W
    9.      * 配置文件地址
      - F# T4 J" o- s( E
    10.      */
      ! L7 O. w- V' Z9 x$ D
    11.     private static final String PROPERTIES = "config.properties";& E, u) C. \6 ~; D' Q8 e0 ?( a% S

    12. $ o1 R9 L, e8 F# p. s, E
    13.     private String qq;
      ) Y3 q. R6 H* a: h( R5 C- D
    14. / q( ^! o0 D; K( r. u: k
    15.     private String password;
      / V7 e) V, v$ @2 ?9 T" Q3 {
    16.    
      ( b, M; N" b# y& U1 }

    17. , P+ S5 U! {2 n, s5 ^; F
    18.     private Config() {
      . b. s( @/ x# \  Q2 n' V; A: e
    19.         //读取配置对象% A, T, N7 v* T+ p- ]
    20.         Properties pro = new Properties();7 E% B0 j5 m% W# f4 s# |& C
    21.         try {
      ) p$ H) P% H  R% @1 T
    22.             pro.load(new FileInputStream(PROPERTIES));) k. v0 G. m& L+ N& A, p+ ^8 p
    23.         } catch (IOException ex) {+ r" \, F  ]/ O+ R  n# f! y. A& ~5 M
    24.             ex.printStackTrace();
      7 F/ b' }* p  E8 Y: n0 c# K
    25.             System.exit(1);- h  `% [8 a9 b  \* m
    26.         }
      6 k0 u) E! R& H) C+ h
    27.         this.setQQ(pro.getProperty("QQ"));6 ]  h0 ^% S( J
    28.         this.setPassword(pro.getProperty("PASSWORD"));
      $ }3 x5 t8 c+ Q5 F
    29.     }& G1 \3 ~8 L! [
    30.     public String getQQ() {3 w# H* O, T% l# L& F* ^/ C1 F! Q( J
    31.         return qq;9 M2 T6 ~! I0 |: n
    32.     }) {4 ^0 ]3 l, r3 K5 Q7 S1 A; |% z0 Q
    33. # ~  ~- x. u4 }1 v
    34.     private void setQQ(String qq) {
      ' n1 e- ?  x. P" [4 o- Z
    35.         if (qq.isEmpty()) {9 t9 z7 w+ O( f: G' X; |: P
    36.           System.out.println("必须在config.properties中填写QQ号!");
      / W) E6 F. k; k
    37.         }
      ' B8 s/ r* Q( L
    38.         this.qq = qq;6 _% g3 {1 V. w4 U, E! a
    39.     }
      2 F6 A5 P5 F: u# m. o

    40. 5 Y% J, T2 \& t9 H1 N! ^+ f
    41.     public String getPassword() {, x2 \& ^) t$ H6 V! n6 n! v
    42.         return password;5 N" M- p* |$ z
    43.     }# m( K! O+ @: P8 ^

    44. ( n( W6 ^3 V* _2 B; z2 \
    45.     private void setPassword(String password) {
      8 k; w; Y1 N, i' P9 Z( ]% q" j
    46.         if (password.isEmpty()) {& z. ~' y0 R6 h; i
    47.             System.out.println("必须在config.properties中填写密码号!");- y$ o& J) S6 L' ^& @
    48.         }
      , D( c+ M" q+ R/ |3 R: v
    49.         this.password = password;; ^3 R7 y2 x6 `/ v/ D4 D
    50.     }
      ) s3 }1 l/ b, j1 h9 }
    51.         public static Config getInstance() {5 |  E$ ^4 p" S6 [+ {+ L+ d( ^
    52.         return ConfigInstance.INSTANCE;% x# z5 F# j) {1 X
    53.     }
      % e- v4 m. v" {
    54. }
    复制代码
    调用小黄鸡接口 SimsimiTools.java:: h, g! P9 K2 V- R) e' P6 I
    1. public class SimsimiTools {1 l; _1 Z6 h1 V2 e; Y& \. C
    2.             /**8 {1 H6 G% y* B& n) T9 N( E+ J. q
    3.              * 小黄鸡机器人
      ! I6 B# h$ S2 F/ Y  q
    4.              * 3 |( X" i- |5 c
    5.              * @author ghma+ ]7 ]- q# G, p8 Y6 |
    6.              */4 ~: M1 b0 t/ |4 W
    7.             public static String getSimsimiContentByNiuren(String params) {
      4 }8 V8 D0 o- n& C/ V! e
    8.                 StringBuffer bufferRes = new StringBuffer();& |8 H; T! [" ?8 R& c. h
    9.                 try {7 [* L0 c+ e& q" J+ p$ {
    10.                     URL realUrl = new URL(# |. [  i; t/ r+ m) \. j
    11.                             "http://www.niurenqushi.com/app/simsimi/ajax.aspx");
      0 c6 N3 C: Z1 G
    12.                     HttpURLConnection conn = (HttpURLConnection) realUrl
      ' K$ x/ A5 K6 m* o
    13.                             .openConnection();7 ?8 R+ S1 o* L# V7 V
    14.                     // 连接超时- G: ]; E- x0 x+ D4 q
    15.                     conn.setConnectTimeout(25000);3 P+ b, \6 U7 a8 s$ l/ G
    16.                     // 读取超时 --服务器响应比较慢,增大时间
      7 v6 g7 N0 F" m4 T
    17.                     conn.setReadTimeout(25000);) X, Z* {( R0 R0 M
    18.                     HttpURLConnection.setFollowRedirects(true);
        M6 V) P; I& m. u7 A
    19.                     // 请求方式
      * W( c9 d$ h# k+ b1 B
    20.                     conn.setRequestMethod("POST");
      ! E* d8 ?+ q) c& d+ o2 P
    21.                     conn.setDoOutput(true);1 C% i0 b# k4 ]$ u
    22.                     conn.setDoInput(true);
      & a) G4 _6 y6 u2 ~/ c
    23.                     conn.setRequestProperty("User-Agent",
      5 Q; D4 B% `) E' x$ j
    24.                             "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0");' h! _6 ~# w. k
    25.                     conn.setRequestProperty("Accept", "*/*");
      * I, N# N7 v" d+ _3 y2 X* J, s; c
    26.                     conn.setRequestProperty("Referer",
      ( V. V% ~' U* J/ e0 W  C/ v! i
    27.                             "http://www.niurenqushi.com/app/simsimi/");9 b& }% l) z' k/ S. x8 W
    28.                     conn.connect();; {) n; X; m+ w/ @2 m
    29.                     // 获取URLConnection对象对应的输出流
      ; }8 U# ~  D, B* C# e9 ~2 G
    30.                     OutputStreamWriter out = new OutputStreamWriter(
      ! H0 |" A+ v- |
    31.                             conn.getOutputStream());
      # b, M/ L; V( g: u' b' r/ C/ L4 x& }
    32.                     // 发送请求参数
      " ^& T/ w; k. _
    33.                     out.write("txt=" + URLEncoder.encode(params, "UTF-8"));
      2 Q: W8 o& w6 W% E" t3 S) M( O1 E# j
    34.                     out.flush();
      0 n( C. V: R9 E$ _: G8 p
    35.                     out.close();
      $ l) {8 r: Z3 o5 W( F3 S
    36.                     InputStream in = conn.getInputStream();* n2 a# s) v& B! e) t7 Q3 p
    37.                     BufferedReader read = new BufferedReader(new InputStreamReader(in,
      / f+ I7 J' K! i) [6 E
    38.                             "UTF-8"));, L4 _8 p4 {1 l0 X7 v4 F* X
    39.                     String valueString = null;2 s9 A; e2 N% E, a7 T8 ~, f
    40.                     while ((valueString = read.readLine()) != null) {
      / \, _0 D9 g3 ?5 x) h' p
    41.                         bufferRes.append(valueString);3 e4 h6 F* {( u3 |
    42.                     }
      7 e, m( f' `% q* @# u4 P% b: Y
    43.                     in.close();
      3 k: e) }' }, n4 ?# H
    44.                     if (conn != null) {
      * c6 f5 d# O+ w. Q
    45.                         // 关闭连接
      . M7 _3 m1 A' }5 n4 a
    46.                         conn.disconnect();
      4 r, u( a/ `0 o" O. e4 ~. T
    47.                     }
      ! `- a# n+ t, O+ }4 A  n
    48.                 } catch (Exception e) {& [# ~/ E/ F; F3 o
    49.                     //System.out.println("小黄鸡接口调用出错!" + e.getMessage());
      4 r( O' i0 G% i! ^" w
    50.                 }
      ) m* h7 I: w; t; b+ e
    51. . T4 x7 e! y- z/ @5 T- E6 [2 q
    52.                 if (bufferRes.toString().equals("干嘛")) {
      4 `3 b  Z$ E* [; b
    53.                    // return XiaoDouMachine.getXiaoDouMsg(params);
      6 z. b) h: V& ]" o- B
    54.                 }
      ; e3 n. _  ~1 L* z, F1 F- R% W
    55.                 String finalRes = removeNews(bufferRes.toString());
      % [! N0 K2 I2 @5 H3 m; F
    56.                 //System.out.println("小黄鸡机器人回复:" + finalRes);  e: x8 X- B; j' r- I$ L' f. J
    57.                 return finalRes;
      1 ?+ z# d/ p# c5 F. V. Q
    58.             }9 g2 Z, s; J  y  k7 o3 Z$ f7 Q
    59.             /**
      1 ^% x2 y" i' {; [+ [0 A9 k
    60.              * 屏蔽当前接口中的广告7 s, `4 r" ?) {6 y" r
    61.              *
      8 h* v* a  D0 B
    62.              * @return
      ) K! K6 k! D' R( n2 \) n
    63.              */
      ' S6 d# P# V* s0 i0 u  b
    64.             public static String removeNews(String sendMsgs) {* h- f) X, I6 z( T0 x
    65.                 // 去除广告
      3 I! `( E7 w2 E+ {1 A6 g
    66.                 if (sendMsgs.indexOf("simsimi2") != -1) {1 d" R2 e+ I3 ^7 \
    67.                     sendMsgs = "偶是毛小驴,女,还木有男友,欢迎南华学子调戏   O(∩_∩)O";
      $ B* n; M$ T* y3 @- l2 `( m
    68.                 } else if (sendMsgs.indexOf("Database") != -1
      $ T$ {% z4 r  y# C% k: a
    69.                         || sendMsgs.indexOf("Failed") != -1) {2 t3 ?! v5 g* ^  z/ Z
    70.                     int random = (int) (Math.random() * 5);
      1 p5 u: L# }3 |7 M0 p) i
    71.                     switch (random) {
      8 A  X# e/ U5 `  ]
    72.                     case 1:: ]: W4 J* {+ F* K; U
    73.                         sendMsgs = "嗯";' z" I- P; i" L' I
    74.                         break;# L* l: M/ ]  q* t3 j
    75.                     case 2:* G+ m" D' Y/ [5 C
    76.                         sendMsgs = "聊天其它的吧";
      0 x$ ^( m- _- A+ I* ^7 A! q/ W: E
    77.                         break;7 i/ \( o5 E( e2 g- ]
    78.                     case 3:0 ?. J, H0 v. `
    79.                         sendMsgs = "嗯哼";
      + h. B% @% w% ?! M
    80.                         break;0 g7 z6 u+ {4 u+ ^; Z
    81.                     case 4:
      1 o0 E7 v3 _; F; w0 j1 m
    82.                         sendMsgs = "哎呀";
      ; Z) D+ V3 |& p& p
    83.                         break;" o8 u' b: K, H" `+ u* ]% U7 A" m
    84.                     case 5:
      $ Z5 F/ S( q3 Q7 M1 K( h$ D% _
    85.                         sendMsgs = "额";$ z9 P  {3 {7 F( q3 G4 g1 o
    86.                         break;
      ' }: i+ J$ X4 b# h. m1 Y1 C' I: H
    87.                     default:
      . V/ s, S9 b7 p' ?: u
    88.                         sendMsgs = "嗯";
      5 W% D& z1 N+ \- a+ g  ?& ]7 x" u% p
    89.                         break;' {( d" e( G* {; R3 x" Y0 r
    90.                     }7 N' f% R- C, L7 G
    91.                 } else if (sendMsgs.indexOf("Unauthorized access") != -1) {
      ( P1 m# _; M/ \& u! Z
    92.                     sendMsgs = "我怎么听不懂你说的什么意思呀[大哭]。咱们能换个话题吗!";
      9 O2 |! [# U, c4 L$ z3 M
    93.                 } else if (sendMsgs.indexOf("你可以教我回答") != -1) {. P: c. q8 U. p0 A
    94.                     sendMsgs = "好吧";
      8 D& E7 B- o' W. J# f4 E
    95.                 }4 ?$ Q1 n" I7 P/ F
    96.                 // 替换部分内容/ Q8 u5 h, E! ?
    97.                 sendMsgs = sendMsgs.replaceAll("傻逼", "sb");
      # v( A3 o4 T( F1 S5 \- C$ R
    98.                 sendMsgs = sendMsgs.replaceAll("小九", "毛小驴");0 ^! T2 ~: ^0 D1 q2 L) u! j
    99.                 sendMsgs = sendMsgs.replaceAll("小豆", "小贱贱");
      5 y) @" w% D8 Y# h
    100.                 sendMsgs = sendMsgs
      # @$ y2 e  d0 y
    101.                         .replaceAll(: L6 D3 ^5 K/ {) f
    102.                                 "小豆机器人网页版地址:http://www.52itstyle.top QQ个性网http://www.52itstyle.top",
      5 ~7 i/ m9 P" {3 a0 P8 M+ l
    103.                                 "伦家不懂官人的话了啦~");
      " P6 S! P4 s' P
    104.                 sendMsgs = sendMsgs.replaceAll("小豆", "毛小驴");
      & K" b3 l# P2 U0 e, ~1 y( d
    105.                 sendMsgs = sendMsgs.replaceAll("人家", "伦家");
      ) _3 z8 E6 q( k& f+ t- W7 t
    106.                 sendMsgs = sendMsgs.replaceAll("科帮网http://www.52itstyle.top",6 [9 b, C0 m: C( V& B( o. c) W
    107.                         "伦家不懂官人的话了啦~");( w, B, E5 J+ P: R
    108.                 return sendMsgs;
      ) k2 y* ?5 J5 y" l7 U; ]3 j: }. u: w
    109.             }/ I# j# K# D2 p! x0 W
    110. }
    复制代码
    根据城市名字调用天气接口Weather.java:8 S# x' r6 Y7 H0 K# I8 a# Y
    1. public class Weather { / w+ w1 x0 \0 k, \# L- q$ h3 _
    2.     public  static String Weather(String cityName) throws IOException ,NullPointerException{ ' V2 I9 d4 V) x; [( [
    3.             String Cityid=  getCityId(cityName);+ H5 ~  G. n" U$ {% t8 i4 ?
    4.         // 连接中央气象台的API
      % y2 G1 k. T6 B& {: u. V1 x  T5 T
    5.         URL url = new URL("http://m.weather.com.cn/data/" + Cityid + ".html");
      0 X( Y; ~+ I% A! E% w7 K+ O9 K; m
    6.         System.out.println(url);
      8 @& T0 G: ]9 _2 i) w# y
    7.         URLConnection  connectionData = url.openConnection(); * |: v! D; d2 T, o# H
    8.         connectionData.setConnectTimeout(1000); , U6 Z3 e& A3 R7 r+ L2 Z& |
    9.         StringBuilder sb = new StringBuilder(); # I- i7 [& r( W" R6 _- p% }
    10.         try {
      6 k2 q* [1 N7 L* d* l# A
    11.                 BufferedReader br = new BufferedReader(new InputStreamReader(
      & N$ A1 ]! |4 [9 Z5 e
    12.                     connectionData.getInputStream(), "UTF-8")); ; W+ |8 t- Q% s
    13.             String line = null; ! x2 e: z. m8 p- t& V0 e
    14.             while ((line = br.readLine()) != null)
      - \+ D) m; X) n5 E" s7 p
    15.                 sb.append(line);
      ( D+ E9 I9 g( p3 m9 o6 D" n
    16.         } catch (SocketTimeoutException e) { * e- R- t$ x5 L: H/ a; _/ a% `7 k: {
    17.             System.out.println("连接超时"); * n8 Z4 k$ A) Z( t# h+ U1 y! U. r4 Q9 W
    18.         } catch (FileNotFoundException e) { ! c4 I, c- H% T8 ~
    19.             System.out.println("加载文件出错"); ( T9 `8 _, [$ z
    20.         }
      ( B& s/ ^; \5 r) w4 K& s) Y
    21.          String datas = sb.toString();   0 L8 G7 J; j- H
    22.          JSONObject jsonData = JSONObject.fromObject(datas); / R5 w, W) T$ Q7 T$ c
    23.          JSONObject info = jsonData.getJSONObject("weatherinfo"); / Z3 |3 D* C8 H4 c
    24.         //得到1到6天的天气情况
      8 l3 R  s% n% o2 B! E
    25.         List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
      ( s/ O( n3 \; R% N( n' u
    26.         sb = new StringBuilder(); ) }9 u1 n" t7 r8 g( v. s, Q4 ]# c* L' k
    27.         for(int i=1;i<=3;i++){: ?: R; g1 T4 Y0 D: n
    28.             //得到未来6天的日期3 b' H" d3 H) m+ I( r9 t, A
    29.             Calendar cal = Calendar.getInstance();
      * G( X$ M+ y) g2 f
    30.             cal.add(Calendar.DAY_OF_YEAR, i-1);- s$ S( R9 W3 s
    31.             Date date = cal.getTime();
      & J4 w7 a5 O  T
    32.             SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日");
      ' q; e& m: n$ C
    33.             Map<String,Object> map = new HashMap<String, Object>();) w) q* j4 J! |; Z  \' [
    34.             map.put("city", info.getString("city").toString());//城市
      2 ^2 q  W- [: h+ U1 w# o
    35.             map.put("date_y", sf.format(date));//日期
      4 [# h3 C: p# k2 u
    36.             map.put("week", getWeek(cal.get(Calendar.DAY_OF_WEEK)));//星期6 S* ]$ G4 d, N8 Z, u& y+ v
    37.             map.put("fchh", info.getString("fchh").toString());//发布时间: D0 v/ J3 n( I8 g5 M% w2 C. e5 p9 a
    38.             map.put("weather", info.getString("weather"+i).toString());//天气$ O% A0 D* X% H! M* ?) A" W9 ~
    39.             map.put("temp", info.getString("temp"+i).toString());//温度
      ( I- e/ L" N: B9 A# W) h
    40.             map.put("wind", info.getString("wind"+i).toString());//风况# t1 K' H5 D+ M# E1 Q, I7 z
    41.             map.put("fl", info.getString("fl"+i).toString());//风速
      - x- F. ]5 m/ [; M* o5 T: ^
    42.             map.put("index", info.getString("index").toString());// 今天的穿衣指数
      # d1 x$ P- o$ k/ Z
    43.             map.put("index_uv", info.getString("index_uv").toString());// 紫外指数 1 u8 n( ~& [1 E" F. D
    44.             map.put("index_tr", info.getString("index_tr").toString());// 旅游指数 . I& `( ^# ^/ i9 n9 g4 Y2 t
    45.             map.put("index_co", info.getString("index_co").toString());// 舒适指数
      6 h3 S7 K2 g8 n+ X: P( B* y
    46.             map.put("index_cl", info.getString("index_cl").toString());// 晨练指数
      9 G' |8 c% Q3 ^# U
    47.             map.put("index_xc", info.getString("index_xc").toString());//洗车指数
      0 Z) {" Q. ~9 g/ g, K. M; z; U
    48.             map.put("index_d", info.getString("index_d").toString());//天气详细穿衣指数 2 N$ {& P; P4 R; X$ R- K( l/ u
    49.             list.add(map);4 _1 B, ]( F. q7 ~! ~% n& L' i0 }
    50.         }
      ; O' R2 K, ~3 J/ X6 C( q
    51.         //控制台打印出天气
      6 X) J* Q- H& F% H# z! K/ Y; d! _
    52.        for(int j=0;j<list.size();j++){
      1 q& s! }+ J/ j) G
    53.            Map<String,Object> wMap = list.get(j);
      - J4 W' r/ P4 S2 e: f
    54.            sb.append(wMap.get("city")+"\t"+wMap.get("date_y")+"\t"+wMap.get("week")+"\t"
      ( ^# k; l3 K0 H7 H3 J1 R
    55.                    +wMap.get("weather")+"\t"+wMap.get("temp")+"\t"+wMap.get("index_uv")+"\n");* Y5 i) j( T( B
    56.        }
      * e+ @# s0 h3 R4 g. q
    57.        return sb.toString();
      5 d! l4 ^  V3 B' Q
    58.   
      $ x, z5 V4 c. D
    59.     } : b6 l4 U$ U: R3 h3 E; L: [  N
    60.     private static String  getWeek(int iw){0 h5 m# s* r: m1 i
    61.         String weekStr = "";' h1 ~5 X" E: d. C8 S/ [, u
    62.         switch (iw) {
      ! X# }& A9 S+ P( ^1 |
    63.         case 1:weekStr = "星期天";break;( w0 r) b8 o! L1 m4 R0 W$ K
    64.         case 2:weekStr = "星期一";break;
      " A6 ]7 O+ g3 |( K  m7 _( L
    65.         case 3:weekStr = "星期二";break;% M7 s% n8 J- J, B3 F  O/ P1 l
    66.         case 4:weekStr = "星期三";break;' `0 o/ e9 U3 n- Q+ x4 h  y
    67.         case 5:weekStr = "星期四";break;8 a$ n! P- N" W$ u
    68.         case 6:weekStr = "星期五";break;
      4 \- S( Q4 Z6 c- ?
    69.         case 7:weekStr = "星期六";break;
        k# [  Z" [, u# E0 g  b9 a; O2 a
    70.         default:1 d7 f' _$ T; z
    71.             break;/ q& l9 I( ^5 e1 V- w* p% [9 o
    72.         }& T5 ?1 B  S1 a, B
    73.         return weekStr;
      5 q! I( |% Y- a. \! w* e7 Y9 _
    74.     }
      ( c; x6 }/ d) `  A
    75.     private static String  getCityId(String cityName){9 {) E' _) s8 M. `: _+ Z2 Z
    76.         Map<String,String> map = new HashMap<String, String>();# N! J4 R9 g$ I/ @
    77.         map.put("北京","101010100");map.put("上海","101020100");map.put("天津","101030100");map.put("重庆","101040100");map.put("香港","101320101");map.put("澳门","101330101");map.put("哈尔滨","101050101");map.put("齐齐哈尔","101050201");map.put("牡丹江","101050301");map.put("大庆","101050901");map.put("伊春","101050801");map.put("双鸭山","101051301");map.put("鹤岗","101051201");map.put("鸡西","101051101");map.put("佳木斯","101050401");map.put("七台河","101051002");map.put("黑河","101050601");map.put("绥化","101050501");map.put("大兴安岭","101050701");map.put("长春","101060101");map.put("延吉","101060301");map.put("吉林","101060201");map.put("白山","101060901");map.put("白城","101060601");map.put("四平","101060401");map.put("松原","101060801");map.put("辽源","101060701");map.put("大安","101060603");map.put("通化","101060501");map.put("沈阳","101070101");map.put("大连","101070201");map.put("葫芦岛","101071401");map.put("盘锦","101071301");map.put("本溪","101070501");map.put("抚顺","101070401");map.put("铁岭","101071101");map.put("辽阳","101071001");map.put("营口","101070801");map.put("阜新","101070901");map.put("朝阳","101071201");map.put("锦州","101070701");map.put("丹东","101070601");map.put("鞍山","101070301");map.put("呼和浩特","101080101");map.put("呼伦贝尔","101081000");map.put("锡林浩特","101080901");map.put("包头","101080201");map.put("赤峰","101080601");map.put("海拉尔","101081001");map.put("乌海","101080301");map.put("鄂尔多斯","101080701");map.put("通辽","101080501");map.put("石家庄","101090101");map.put("唐山","101090501");map.put("张家口","101090301");map.put("廊坊","101090601");map.put("邢台","101090901");map.put("邯郸","101091001");map.put("沧州","101090701");map.put("衡水","101090801");map.put("承德","101090402");map.put("保定","101090201");map.put("秦皇岛","101091101");map.put("郑州","101180101");map.put("开封","101180801");map.put("洛阳","101180901");map.put("平顶山","101180501");
      0 q, d/ z: \# P* h  t
    78.         map.put("焦作","101181101");map.put("鹤壁","101181201");map.put("新乡","101180301");map.put("安阳","101180201");map.put("濮阳","101181301");map.put("许昌","101180401");map.put("漯河","101181501");map.put("三门峡","101181701");map.put("南阳","101180701");map.put("商丘","101181001");map.put("信阳","101180601");map.put("周口","101181401");map.put("驻马店","101181601");map.put("太原","101100101");map.put("阳泉","101100301");map.put("晋城","101100601");map.put("晋中","101100401");map.put("临汾","101100701");map.put("运城","101100801");map.put("长治","101100501");map.put("朔州","101100901");map.put("忻州","101101001");map.put("大同","101100201");map.put("吕梁","101101101");map.put("西安","101110101");map.put("韩城","101110510");map.put("安康","101110701");map.put("汉中","101110801");map.put("宝鸡","101110901");map.put("咸阳","101110200");map.put("榆林","101110401");map.put("渭南","101110501");map.put("商洛","101110601");map.put("铜川","101111001");map.put("延安","101110300");map.put("银川","101170101");map.put("固原","101170401");map.put("中卫","101170501");map.put("石嘴山","101170201");map.put("吴忠","101170301");map.put("兰州","101160101");map.put("白银","101161301");map.put("庆阳","101160401");map.put("酒泉","101160801");map.put("天水","101160901");map.put("武威","101160501");map.put("张掖","101160701");map.put("甘南","101050204");map.put("临夏","101161101");map.put("平凉","101160301");map.put("定西","101160201");map.put("金昌","101160601");map.put("西宁","101150101");map.put("海北","101150801");map.put("海西","101150701");map.put("黄南","101150301");map.put("果洛","101150501");map.put("玉树","101150601");map.put("海东","101150201");map.put("海南","101150401");map.put("武汉","101200101");map.put("宜昌","101200901");map.put("黄冈","101200501");map.put("恩施","101201001");map.put("荆州","101200801");map.put("神农架","101201201");map.put("十堰","101201101");map.put("咸宁","101200701");map.put("襄阳","101200201");map.put("孝感","101200401");map.put("随州","101201301");map.put("黄石","101200601");
      ' w. M8 z( L0 Q7 N
    79.         map.put("荆门","101201401");map.put("鄂州","101200301");map.put("长沙","101250101");map.put("邵阳","101250901");map.put("常德","101250601");map.put("郴州","101250501");map.put("吉首","101251501");map.put("株洲","101250301");map.put("娄底","101250801");map.put("湘潭","101250201");map.put("益阳","101250701");map.put("永州","101251401");map.put("岳阳","101251001");map.put("衡阳","101250401");map.put("怀化","101251201");map.put("韶山","101250202");map.put("张家界","101251101");map.put("杭州","101210101");map.put("湖州","101210201");map.put("金华","101210901");map.put("宁波","101210401");map.put("丽水","101210801");map.put("绍兴","101210501");map.put("衢州","101211001");map.put("嘉兴","101210301");map.put("台州","101210601");map.put("舟山","101211101");map.put("温州","101210701");map.put("南昌","101240101");map.put("萍乡","101240901");map.put("九江","101240201");map.put("上饶","101240301");map.put("抚州","101240401");map.put("吉安","101240601");map.put("鹰潭","101241101");map.put("宜春","101240501");map.put("新余","101241001");map.put("景德镇","101240801");map.put("赣州","101240701");map.put("福州","101230101");map.put("厦门","101230201");map.put("龙岩","101230701");map.put("南平","101230901");map.put("宁德","101230301");map.put("莆田","101230401");map.put("泉州","101230501");map.put("三明","101230801");map.put("漳州","101230601");map.put("贵阳","101260101");map.put("安顺","101260301");map.put("赤水","101260208");map.put("遵义","101260201");map.put("铜仁","101260601");map.put("六盘水","101260801");map.put("毕节","101260701");map.put("凯里","101260501");map.put("都匀","101260401");map.put("成都","101270101");map.put("泸州","101271001");map.put("内江","101271201");map.put("凉山","101271601");map.put("阿坝","101271901");map.put("巴中","101270901");map.put("广元","101272101");map.put("乐山","101271401");map.put("绵阳","101270401");map.put("德阳","101272001");map.put("攀枝花","101270201");map.put("雅安","101271701");map.put("宜宾","101271101");map.put("自贡","101270301");map.put("甘孜州","101271801");map.put("达州","101270601");map.put("资阳","101271301");
      2 f: B1 ?+ G. [1 Y. d! L
    80.         map.put("广安","101270801");map.put("遂宁","101270701");map.put("眉山","101271501");map.put("南充","101270501");
      ; s9 Q5 g% q5 `
    81.         map.put("广州","101280101");map.put("深圳","101280601");map.put("潮州","101281501");map.put("韶关","101280201");/ ^0 Q0 a4 w+ {( h& e
    82.         map.put("湛江","101281001");map.put("惠州","101280301");map.put("清远","101281301");map.put("东莞","101281601");/ P' B: l1 u1 [
    83.         map.put("江门","101281101");map.put("茂名","101282001");map.put("肇庆","101280901");map.put("汕尾","101282101");$ _$ ~+ @7 \- R0 s" J4 g
    84.         map.put("河源","101281201");map.put("揭阳","101281901");map.put("梅州","101280401");map.put("中山","101281701");7 p2 Q# y0 M4 l
    85.         map.put("德庆","101280905");map.put("阳江","101281801");map.put("云浮","101281401");map.put("珠海","101280701");8 B5 |% d, f  o: }3 ]8 B2 a& J
    86.         map.put("汕头","101280501");map.put("佛山","101280800");map.put("南宁","101300101");map.put("桂林","101300501");
      ' X: b  q" E6 l* w1 L1 Z
    87.         map.put("阳朔","101300510");map.put("柳州","101300301");map.put("梧州","101300601");map.put("玉林","101300901");7 K8 [$ O! H0 O7 T( A
    88.         map.put("桂平","101300802");map.put("贺州","101300701");map.put("钦州","101301101");map.put("贵港","101300801");' o8 ~4 X$ u# P0 \' r( {+ ^) O
    89.         map.put("防城港","101301401");map.put("百色","101301001");map.put("北海","101301301");map.put("河池","101301201");
      : V# \, V- v% _2 T( a
    90.         map.put("来宾","101300401");map.put("崇左","101300201");map.put("昆明","101290101");map.put("保山","101290501");& a& t8 C0 l+ T4 @: K
    91.         map.put("楚雄","101290801");map.put("德宏","101291501");map.put("红河","101290301");map.put("临沧","101291101");
      & a5 \( R; s5 y2 U
    92.         map.put("怒江","101291201");map.put("曲靖","101290401");map.put("思茅","101290901");
      # P) F) v. |& p
    93.         map.put("文山","101290601");map.put("玉溪","101290701");map.put("昭通","101291001");0 ?; v0 i; y* e
    94.         map.put("丽江","101291401");map.put("大理","101290201");map.put("海口","101310101");
      % f2 w. h* b% a
    95.         map.put("三亚","101310201");map.put("儋州","101310205");map.put("琼山","101310102");map.put("通什","101310222");& \8 M& ?; y  N9 e( {8 e6 y
    96.         map.put("文昌","101310212");map.put("乌鲁木齐","101130101");map.put("阿勒泰","101131401");map.put("阿克苏","101130801");
      3 F" t' N2 p* R  N6 s: Q! f
    97.         map.put("昌吉","101130401");map.put("哈密","101131201");map.put("和田","101131301");map.put("喀什","101130901");
      * a5 m5 Z! d" d0 U! D
    98.         map.put("克拉玛依","101130201");map.put("石河子","101130301");map.put("塔城","101131101");map.put("库尔勒","101130601");
      - a% w0 o6 p/ f: W9 P3 V; x7 N
    99.         map.put("吐鲁番","101130501");map.put("伊宁","101131001");map.put("拉萨","101140101");map.put("阿里","101140701");
      0 ?( h( I/ D7 U9 {& D
    100.         map.put("昌都","101140501");map.put("那曲","101140601");map.put("日喀则","101140201");map.put("山南","101140301");
      & z! }# `% H# k9 z6 e' d; X
    101.         map.put("林芝","101140401");map.put("台北","101340102");map.put("高雄","101340201");map.put("南京","101190101");$ f1 f, J  g* i- l, n
    102.         map.put("溧水","101190102");map.put("高淳","101190103");map.put("江宁","101190104");map.put("六合","101190105");. y0 z4 E4 F: P. k; {  ~; y$ B
    103.         map.put("江浦","101190106");map.put("无锡","101190201");map.put("江阴","101190202");map.put("宜兴","101190203");4 h/ k; c: h/ W
    104.         map.put("锡山","101190204");map.put("徐州","101190801");map.put("铜山","101190802");map.put("丰县","101190803");/ i8 R" I& r1 C" L, [
    105.         map.put("沛县","101190804");map.put("邳州","101190805");map.put("睢宁","101190806");map.put("新沂","101190807");8 ^7 F/ Z. A! W9 Y7 F2 l' W+ u' p) j
    106.         map.put("常州","101191101");map.put("溧阳","101191102");map.put("金坛","101191103");map.put("武进","101191104");
      , ?6 p5 S. ~0 h1 n9 _, }6 @3 C
    107.         map.put("苏州","101190401");map.put("常熟","101190402");map.put("张家港","101190403");map.put("昆山","101190404");
      8 u  a$ i8 k3 a1 X  {+ R1 M  Y
    108.         map.put("吴中","101190405");map.put("吴江","101190407");map.put("太仓","101190408");map.put("南通","101190501");7 e3 P3 B% ~9 P& \9 K# M
    109.         map.put("海安","101190502");map.put("如皋","101190503");map.put("如东","101190504");map.put("启东","101190507");
      ( y8 T8 x, a- t6 N6 E8 ], V
    110.         map.put("海门","101190508");map.put("通州","101190509");map.put("连云港","101191001");map.put("东海","101191002");
      9 L; J0 `4 Y! V  f. `6 t
    111.         map.put("赣榆","101191003");map.put("灌云","101191004");map.put("灌南","101191005");map.put("淮安","101190901");0 M5 V1 y' L: u2 p3 C, X0 d5 D9 k6 I
    112.         map.put("金湖","101190902");map.put("盱眙","101190903");map.put("洪泽","101190904");map.put("涟水","101190905");/ _- _5 u4 A9 T
    113.         map.put("淮阴区","101190906");map.put("淮阴","101190907");map.put("淮安区","101190908");map.put("盐城","101190701");map.put("响水","101190702");map.put("滨海","101190703");map.put("阜宁","101190704");map.put("射阳","101190705");map.put("建湖","101190706");map.put("东台","101190707");map.put("大丰","101190708");map.put("盐都","101190709");map.put("扬州","101190601");map.put("宝应","101190602");map.put("仪征","101190603");map.put("高邮","101190604");map.put("江都","101190605");map.put("邗江","101190606");map.put("镇江","101190301");map.put("丹阳","101190302");map.put("扬中","101190303");map.put("句容","101190304");map.put("丹徒","101190305");map.put("泰州","101191201");map.put("兴化","101191202");map.put("泰兴","101191203");map.put("姜堰","101191204");map.put("靖江","101191205");map.put("宿迁","101191301");map.put("沭阳","101191301");map.put("泗阳","101191301");map.put("泗洪","101191301");map.put("宿豫","101191301");map.put("合肥","101220101");map.put("长丰","101220101");map.put("肥东","101220101");map.put("肥西","101220101");map.put("芜湖","101220301");map.put("繁昌","101220302");map.put("南陵","101220304");map.put("芜湖县","101220303");+ s8 [  V* p9 N8 ^* ^
    114.         map.put("蚌埠","101220201");map.put("怀远","101220202");map.put("固镇","101220203");map.put("五河","101220204");map.put("淮南","101220401");map.put("凤台","101220402");map.put("潘集","101220403");map.put("马鞍山","101220501");map.put("当涂","101220502");map.put("淮北","101221201");map.put("濉溪","101221201");map.put("铜陵","101221301");map.put("安庆","101220601");map.put("枞阳","101220602");map.put("太湖","101220603");map.put("潜山","101220604");map.put("怀宁","101220605");map.put("宿松","101220606");map.put("望江","101220607");map.put("岳西","101220608");map.put("桐城","101220609");map.put("黄山","101221001");map.put("黄山区","101221002");map.put("屯溪","101221003");map.put("祁门","101221004");map.put("黟县","101221005");map.put("歙县","101221006");map.put("休宁","101221007");map.put("黄山风景区","101221008");map.put("阜阳","101220801");map.put("阜南","101220802");map.put("颍上","101220803");map.put("临泉","101220804");map.put("界首","101220805");map.put("太和","101220806");map.put("宿州","101220701");map.put("砀山","101220702");map.put("灵璧","101220703");map.put("泗县","101220704");map.put("萧县","101220705");map.put("滁州","101221101");map.put("凤阳","101221102");map.put("明光","101221103");map.put("定远","101221104");map.put("全椒","101221105");map.put("来安","101221106");map.put("天长","101221107");map.put("六安","101221501");map.put("寿县","101221503");map.put("霍邱","101221502");map.put("金寨","101221505");map.put("霍山","101221506");map.put("舒城","101221507");map.put("宣城","101221401");map.put("泾县","101221401");map.put("旌德","101221401");map.put("宁国","101221401");map.put("绩溪","101221401");map.put("广德","101221401");map.put("郎溪","101221401");map.put("池州","101221701");map.put("东至","101221702");map.put("青阳","101221703");map.put("九华山","101221704");map.put("石台","101221705");map.put("亳州","101220901");map.put("涡阳","101220902");map.put("利辛","101220903");map.put("蒙城","101220904");map.put("巢湖","101221601");map.put("庐江","101221602");map.put("无为","101221603");map.put("含山","101221604");map.put("和县","101221605");map.put("济南","101120101");map.put("长清","101120102");map.put("商河","101120103");map.put("章丘","101120104");map.put("平阴","101120105");map.put("济阳","101120106");map.put("青岛","101120201");map.put("崂山","101120202");
      - g- ?$ ^4 G+ R8 J' b: F
    115.         map.put("即墨","101120204");map.put("胶州","101120205");map.put("胶南","101120206");map.put("莱西","101120207");map.put("平度","101120208");map.put("淄博","101120301");map.put("淄川","101120302");map.put("博山","101120303");map.put("高清","101120304");map.put("周村","101120305");map.put("沂源","101120306");map.put("桓台","101120307");map.put("临淄","101120308");map.put("枣庄","101121401");map.put("薛城","101121402");map.put("峄城","101121403");map.put("台儿庄","101121404");map.put("滕州","101121405");map.put("东营","101121201");map.put("河口","101121202");map.put("垦利","101121203");map.put("利津","101121204");map.put("广饶","101121205");map.put("烟台","101120501");map.put("莱州","101120502");map.put("长岛","101120503");map.put("蓬莱","101120504");map.put("龙口","101120505");map.put("招远","101120506");map.put("栖霞","101120507");map.put("福山","101120508");map.put("牟平","101120509");map.put("莱阳","101120510");map.put("海阳","101120511");map.put("潍坊","101120601");map.put("青州","101120602");
      + F& f4 r! Y7 e5 ~. {8 p
    116.         map.put("寿光","101120603");map.put("临朐","101120604");map.put("昌乐","101120605");map.put("昌邑","101120606");map.put("安丘","101120607");map.put("高密","101120608");map.put("诸城","101120609");map.put("济宁","101120701");map.put("嘉祥","101120702");map.put("微山","101120703");map.put("鱼台","101120704");map.put("兖州","101120705");map.put("金乡","101120706");map.put("汶上","101120707");map.put("泗水","101120708");map.put("梁山","101120709");map.put("曲阜","101120710");map.put("邹城","101120711");map.put("泰安","101120801");map.put("新泰","101120802");map.put("肥城","101120804");map.put("东平","101120805");map.put("宁阳","101120806");map.put("威海","101121301");map.put("文登","101121302");map.put("荣成","101121303");map.put("乳山","101121304");map.put("成山头","101121305");map.put("石岛","101121306");map.put("日照","101121501");map.put("五莲","101121502");map.put("莒县","101121503");map.put("莱芜","101121601");map.put("临沂","101120901");map.put("莒南","101120902");map.put("沂南","101120903");map.put("苍山","101120904");map.put("临沭","101120905");
      / _& H# n: j* T. w9 ^) U2 }
    117.         map.put("郯城","101120906");map.put("蒙阴","101120907");map.put("平邑","101120908");map.put("费县","101120909");map.put("沂水","101120910");
      , x( F% l) \0 `- _
    118.         map.put("德州","101120401");map.put("武城","101120402");map.put("临邑","101120403");map.put("陵县","101120404");map.put("齐河","101120405");map.put("乐陵","101120406");map.put("庆云","101120407");map.put("平原","101120408");map.put("宁津","101120409");map.put("夏津","101120410");map.put("禹城","101120411");map.put("聊城","101121701");map.put("冠县","101121702");map.put("阳谷","101121703");map.put("高唐","101121704");map.put("茌平","101121705");map.put("东阿","101121706");map.put("临清","101121707");map.put("莘县","101121709");map.put("滨州","101121101");map.put("博兴","101121102");map.put("无棣","101121103");map.put("阳信","101121104");map.put("惠民","101121105");map.put("沾化","101121106");map.put("邹平","101121107");map.put("菏泽","101121001");map.put("鄄城","101121002");map.put("郓城","101121003");map.put("东明","101121004");map.put("定陶","101121005");map.put("巨野","101121006");map.put("曹县","101121007");map.put("成武","101121008");map.put("单县","101121009");% a( p: r; G& B
    119.         System.out.println(cityName);4 Y, p0 P( T8 A3 ^- U+ A' ~
    120.         return map.get(cityName.trim());
      7 [# g5 B3 g; q5 B8 U" H9 ]
    121.     }
      1 m' v. U* y3 L/ n8 X
    122. //    public static void main(String[] args) {
      1 o) ?% F/ ^% I4 d
    123. //        try { ) m$ l7 Q. X6 [4 u
    124. //                //System.out.println(getCityId("胶州"));
      * e# B2 u1 J4 V, n3 E1 E
    125. //                Weather.Weather("上海");# k7 B1 g; W) r! I, @6 h& ?6 R1 w
    126. //        } catch (Exception e) {
      & x$ Q" O( o( Y: n" X- ?; j+ Z
    127. //            e.printStackTrace(); 5 S6 u' f6 Q5 ?9 D# l
    128. //        }
      ( Y0 Q1 d: L3 G8 o
    129. //    }
      * |9 z5 r# A- o! A) T, l
    130. }
    复制代码
    ( O2 D% i; X) Z

    ' b6 A2 Z9 K1 D5 E+ z$ C: n

    科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、科帮网管理员和版主有权不事先通知发贴者而删除本文


    JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

    红红火火恍恍惚惚

    10

    主题

    5

    听众

    1108

    金钱

    五袋长老

    该用户从未签到

    90后

    沙发
    发表于 2015-12-31 10:20:52 |只看该作者
    WebQQClientStart  是什么
    回复

    使用道具 举报

    1

    主题

    3

    听众

    341

    金钱

    四袋长老

    该用户从未签到

    板凳
    发表于 2016-03-17 22:07:50 |只看该作者
    学习一下。谢谢
    回复

    使用道具 举报

    woniu 实名认证   

    2

    主题

    0

    听众

    330

    金钱

    四袋长老

    该用户从未签到

    地板
    发表于 2016-04-12 11:39:40 |只看该作者
    这个项目太棒勒!下下来学习下!
    回复

    使用道具 举报

    28

    主题

    1

    听众

    432

    金钱

    四袋长老

    该用户从未签到

    5#
    发表于 2016-04-19 16:50:07 |只看该作者
    学习到了很多类和方法的调用谢谢了!
    回复

    使用道具 举报

    5

    主题

    0

    听众

    316

    金钱

    四袋长老

    该用户从未签到

    6#
    发表于 2017-08-14 08:41:04 |只看该作者
    不错不错不错,学习一下
    回复

    使用道具 举报

    快速回复
    您需要登录后才可以回帖 登录 | 立即注册

       

    关闭

    站长推荐上一条 /1 下一条

    发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
    快速回复 返回顶部 返回列表