我的日常

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

动态微博

查看: 4011|回复: 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协议* u; M0 }% n! Q5 y1 t" |9 ]7 k
    登陆类:Login.java
    , E0 Y1 Z7 |5 X/ v' M
    1. public class Login {
      - J& l/ [5 n! t2 `: K
    2.     public static void main(String[] args) {
      * c+ C1 e4 r" n% @9 @0 o2 }
    3.         //获取配置+ c) O' T3 Z1 L9 R, x3 K+ q) T
    4.         Config config = Config.getInstance();" r. k2 P+ g# m( t
    5.         String qqName = config.getQQ();
      1 q% Y) v7 S8 k+ C
    6.         String password = config.getPassword();! B, c- [5 d! c" ]. q4 X: ?$ y
    7.         WebQQClientStart qq = new WebQQClientStart(qqName, password);) X' V( @+ m  \# C: |6 f
    8.         //登录
      # c0 u8 y. {; a; q9 ?8 Y+ [
    9.         qq.login();
      % z/ U5 W, a, |' |
    10.     }
      ( Y5 E: o  ]7 t
    11. }
    复制代码
    配置QQ号密码Config.java:
    6 ~( N+ v3 m# ]# a1 z
    1. public class Config {
      0 G: @6 |, a; z: Z/ w" }7 g

    2. " _/ }  P* R; L4 u0 V
    3.     private static class ConfigInstance {
      5 @1 F' O6 k) T3 G6 U; L6 S

    4. 1 T( T8 y1 J# w$ \4 d
    5.         private static final Config INSTANCE = new Config();
      # A- ^4 L3 @; }* b. f
    6.     }% ?3 P  x$ O) W( T, n
    7. * @: B$ m& S5 w
    8.     /**: f, b, r/ m- Y: g
    9.      * 配置文件地址+ q( g# G. `9 F: m  t
    10.      */; W2 z& m, k+ |( m: N
    11.     private static final String PROPERTIES = "config.properties";
      # h; P  m( `! L+ B# S) V
    12. ' p& U7 U' S1 I/ Q
    13.     private String qq;5 ~4 F% y" m  L# O: z) G
    14. 2 X  V8 B' l$ P4 W9 E: s. J
    15.     private String password;
      $ W5 {8 @+ ]  J1 u
    16.    
      . K$ ?/ [8 R0 v4 m( z7 U/ }1 ?

    17. 4 @$ h$ i) \' x* \. v5 ^
    18.     private Config() {3 }, J- u3 t0 u3 `
    19.         //读取配置对象
      ) ^. f) L( _0 t! l8 J; C: R
    20.         Properties pro = new Properties();
      3 B- _8 U0 }/ I/ t5 g" {9 \
    21.         try {" M5 E2 l6 }% J
    22.             pro.load(new FileInputStream(PROPERTIES));/ G& z& q3 S: s0 i0 `4 H. _
    23.         } catch (IOException ex) {; p' L+ d% ^  c
    24.             ex.printStackTrace();3 N" t6 K0 u7 M. k" h
    25.             System.exit(1);/ H; w; J- `% j5 m% W
    26.         }% w0 B! `* V. o3 }4 ~
    27.         this.setQQ(pro.getProperty("QQ"));6 `! o: U  J$ M
    28.         this.setPassword(pro.getProperty("PASSWORD"));" G! f, v9 n2 q* c" n
    29.     }2 B7 g7 e. q4 V% ?4 O) X
    30.     public String getQQ() {
      4 G1 s$ C' N9 q! Q0 L6 q
    31.         return qq;% `* T2 H4 W* K# {# X3 d! D
    32.     }- L" w4 e$ x9 ?+ B! e7 j- `+ q
    33. , |" H, l  _# X, L8 M0 Y
    34.     private void setQQ(String qq) {" Q" R! ^* D1 P4 h: s) s3 S# W7 e
    35.         if (qq.isEmpty()) {+ Y: R$ J$ |2 D* m2 d1 K/ J; T( }
    36.           System.out.println("必须在config.properties中填写QQ号!");* O$ @& t: ?/ L! A- Z* @/ w5 H
    37.         }% s% y! ], ~6 x7 g& h0 d2 J; a
    38.         this.qq = qq;* N7 t8 D$ P0 [8 f
    39.     }- h. a7 I% b1 N  y: j

    40. # Y/ M, h% p' s& o9 H* }
    41.     public String getPassword() {
      ; |& Q! q  `: u4 N
    42.         return password;
      / G" R4 ~) O7 ]' [4 k
    43.     }( b2 m9 M% P/ L) V
    44. 0 l$ U( z: s' F* ]" C
    45.     private void setPassword(String password) {5 n9 U5 n) r5 e; f. E; o
    46.         if (password.isEmpty()) {
      & r" B  r1 ]$ R% w
    47.             System.out.println("必须在config.properties中填写密码号!");+ ^$ A3 m0 C5 b! K! t
    48.         }8 h' O) u4 t2 P
    49.         this.password = password;2 q# v  {' }8 m2 t9 l
    50.     }
      # b8 R8 d# A) T$ R9 j
    51.         public static Config getInstance() {
      ' @' U" T; C" H; V8 }0 g! W' \
    52.         return ConfigInstance.INSTANCE;
      % p- s5 w1 I" o: D! s2 g/ W
    53.     }
      1 d! ~- C+ F7 Q" N+ x6 i
    54. }
    复制代码
    调用小黄鸡接口 SimsimiTools.java:6 ]2 h( x0 B; |* S; K" G
    1. public class SimsimiTools {* G. _) |3 {6 T  t
    2.             /**
      - n$ G0 x7 ]' h! j" ~" w8 N0 u0 J8 x2 r
    3.              * 小黄鸡机器人
      : N6 p3 ]6 k5 _% S4 ^# M
    4.              *
      ! @$ o4 Z! a+ Q) G1 J' ~
    5.              * @author ghma+ ~* W) f4 M; T# s
    6.              */
      3 O( V1 u; _$ ?" @
    7.             public static String getSimsimiContentByNiuren(String params) {0 G* p( G' U8 K
    8.                 StringBuffer bufferRes = new StringBuffer();6 o; R3 R9 T3 x  O
    9.                 try {
      7 `# J0 x/ ~% {4 {' z
    10.                     URL realUrl = new URL(
      ; f- d: W. E* a! ~- }( V! ~
    11.                             "http://www.niurenqushi.com/app/simsimi/ajax.aspx");! ?# [4 y  H, f0 Q0 p* W
    12.                     HttpURLConnection conn = (HttpURLConnection) realUrl) V( C3 \0 s/ l0 c
    13.                             .openConnection();+ A8 m$ p) A# Z- p, m/ b
    14.                     // 连接超时
      # o. L; f' D2 k$ X! |# ~- y( M
    15.                     conn.setConnectTimeout(25000);  E- H7 E' s: E; [
    16.                     // 读取超时 --服务器响应比较慢,增大时间+ ~$ u) x$ X" Y0 r: M6 P# R
    17.                     conn.setReadTimeout(25000);
      # j1 ]' P! A  I( C8 h" Y
    18.                     HttpURLConnection.setFollowRedirects(true);% D2 Y; y' j. v5 g( G
    19.                     // 请求方式
      ' V% [1 U3 u+ p. P' U# P8 Q; h. R
    20.                     conn.setRequestMethod("POST");- p6 Y- `8 F8 ?) ]/ L
    21.                     conn.setDoOutput(true);% ^) U3 H% B1 [  c
    22.                     conn.setDoInput(true);
      - `5 h' r- P: L
    23.                     conn.setRequestProperty("User-Agent",: z. a( A+ ?3 q  H) j& j
    24.                             "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0");
      / A% ~( d4 O5 M( b# Z
    25.                     conn.setRequestProperty("Accept", "*/*");
      ; v8 }. D0 D1 c. \# y, M, N6 e
    26.                     conn.setRequestProperty("Referer",
      , n' _1 S* y: o7 A2 f, d
    27.                             "http://www.niurenqushi.com/app/simsimi/");& h% n% ?1 y0 w7 G1 P9 `. h
    28.                     conn.connect();
      3 Q/ @4 j& F' x' r9 Z& q( p
    29.                     // 获取URLConnection对象对应的输出流0 m( A( @- S% X9 W& h' y, f% t
    30.                     OutputStreamWriter out = new OutputStreamWriter(  b9 o% b' T) L8 @, q# E/ X
    31.                             conn.getOutputStream());
      8 H) W  v, A. U8 ]( v. L' M
    32.                     // 发送请求参数* r/ {% T: o4 O) ^8 ?/ j
    33.                     out.write("txt=" + URLEncoder.encode(params, "UTF-8"));0 U9 L  N& s6 E" v+ r2 x" I* z
    34.                     out.flush();, \. g4 S( Y" z: A+ q+ `
    35.                     out.close();
      & @; K1 v+ d  }4 l; c$ X" ?
    36.                     InputStream in = conn.getInputStream();( G2 c( i8 U( d8 P; S3 k
    37.                     BufferedReader read = new BufferedReader(new InputStreamReader(in,
      3 V9 W4 x- O9 x2 G3 j" t
    38.                             "UTF-8"));
      : j( s# C* V0 }# P0 y
    39.                     String valueString = null;
      7 M  b+ Z& I' a# H
    40.                     while ((valueString = read.readLine()) != null) {$ H4 q$ {8 Q+ v7 C4 s
    41.                         bufferRes.append(valueString);
      5 \" i3 a+ D1 }+ l
    42.                     }
      7 |$ ~. F7 C0 y) V6 T. P) q
    43.                     in.close();
      ( x( G  c# x; S" Y
    44.                     if (conn != null) {! @+ V* N0 f( g0 w2 H$ |
    45.                         // 关闭连接
      0 B0 @) }& h: l5 V' O7 l; P
    46.                         conn.disconnect();, T6 H/ L  b2 T# d2 ~9 w/ I# m! \+ F
    47.                     }
      6 x; t# I: D8 B# e% J. t- t/ f' L
    48.                 } catch (Exception e) {
      . N1 F$ y- Q' T- H1 o6 J
    49.                     //System.out.println("小黄鸡接口调用出错!" + e.getMessage());; Q1 r! P) _& l
    50.                 }
      * d5 m, O1 T6 H0 h* Z

    51. " G1 N: C0 C" K! c
    52.                 if (bufferRes.toString().equals("干嘛")) {
      0 z# _9 }2 {2 f4 e) N
    53.                    // return XiaoDouMachine.getXiaoDouMsg(params);
      ! O- M/ K/ W9 r8 P# o' d
    54.                 }! s9 |2 z+ D5 ~0 Q9 e1 f5 c
    55.                 String finalRes = removeNews(bufferRes.toString());: @0 ~( m" D  j7 w
    56.                 //System.out.println("小黄鸡机器人回复:" + finalRes);: F1 |* ]0 ]1 J' V
    57.                 return finalRes;
      " B0 w* w: C/ E5 W% I
    58.             }
      ; Z, @( v9 j. C2 u. d( M' D! M0 V
    59.             /**) b5 U; S$ r/ C, J8 T$ [) o  D8 {
    60.              * 屏蔽当前接口中的广告
      7 ]% M# A) a7 r0 X) g/ @1 ?- ~
    61.              *
      - u# l, D' e" x3 P  k
    62.              * @return& R# F" x& R: Y* w4 m0 x+ B, a
    63.              */" X! v+ Z$ w, [- V, i: w
    64.             public static String removeNews(String sendMsgs) {/ Z! V5 ?2 R7 h  B" Y
    65.                 // 去除广告
      * U" |4 v; K: a3 D9 M5 C7 b
    66.                 if (sendMsgs.indexOf("simsimi2") != -1) {
      3 f5 h% P- \! _* Q( d
    67.                     sendMsgs = "偶是毛小驴,女,还木有男友,欢迎南华学子调戏   O(∩_∩)O";! O0 I+ _* a! |0 S. |+ I; D
    68.                 } else if (sendMsgs.indexOf("Database") != -1
      ( |6 e& M, e/ t
    69.                         || sendMsgs.indexOf("Failed") != -1) {
      - M5 Z$ c4 O5 o  \# ^
    70.                     int random = (int) (Math.random() * 5);8 M, T& @6 w8 h; N! X& @
    71.                     switch (random) {' m  n7 Z+ I9 k; C+ o
    72.                     case 1:
      ; N( u+ }& p4 i3 f
    73.                         sendMsgs = "嗯";* K, v; n# \- Q9 @
    74.                         break;
      8 ]3 V' X6 B! J( F& c
    75.                     case 2:
      & f/ w- |' d% n/ j5 m
    76.                         sendMsgs = "聊天其它的吧";
      + R! U$ ~3 Z3 F# n. U& T
    77.                         break;
      - f: ?" |) O& W
    78.                     case 3:# [; Y; B/ V. K4 z: ?) I5 N, w9 c8 f  b
    79.                         sendMsgs = "嗯哼";1 s  W4 s* c& M2 U
    80.                         break;+ C/ ^2 q4 l( ]3 T( y6 X; h
    81.                     case 4:/ W1 c6 T! ~6 |* y3 a5 q
    82.                         sendMsgs = "哎呀";' \3 P& Z2 c5 W& A. c2 C2 h! I
    83.                         break;; v5 _# f* I  W5 g# E$ V
    84.                     case 5:  G: M8 k; O( p4 K( }1 L: |
    85.                         sendMsgs = "额";; M+ L: _$ {8 l* R
    86.                         break;" l" [' x1 Z. n  J7 o1 p# Z
    87.                     default:- k# X, J& k7 n" C2 A% V; Z
    88.                         sendMsgs = "嗯";# s+ m& C# e1 ]
    89.                         break;
      & |5 _, J' ?2 z* A. _$ |. q  j
    90.                     }
      : m8 O" j% ]7 e
    91.                 } else if (sendMsgs.indexOf("Unauthorized access") != -1) {
      ! `6 U& s1 N+ e5 v
    92.                     sendMsgs = "我怎么听不懂你说的什么意思呀[大哭]。咱们能换个话题吗!";4 x" w! y  s0 p+ G3 h. A. x
    93.                 } else if (sendMsgs.indexOf("你可以教我回答") != -1) {" I+ s% Y( ~. |: {6 W
    94.                     sendMsgs = "好吧";5 I$ A1 E) W( ~9 m! ?6 k/ |
    95.                 }
        p! c; ?. b$ P, `3 M
    96.                 // 替换部分内容
      - R# K0 S' f( v3 F
    97.                 sendMsgs = sendMsgs.replaceAll("傻逼", "sb");. [2 s( ^8 ?& }& O
    98.                 sendMsgs = sendMsgs.replaceAll("小九", "毛小驴");
      9 i3 e! Z5 B8 V6 d0 w9 _' x& ]  t
    99.                 sendMsgs = sendMsgs.replaceAll("小豆", "小贱贱");# R2 W/ }& d5 L" W5 U
    100.                 sendMsgs = sendMsgs
      0 j7 U% O; @* ^1 Y' [# O
    101.                         .replaceAll(
      ) W4 H5 W7 }! d6 I2 z
    102.                                 "小豆机器人网页版地址:http://www.52itstyle.top QQ个性网http://www.52itstyle.top",2 l/ e/ q  H( `. k5 K) j; D9 o
    103.                                 "伦家不懂官人的话了啦~");
      0 n" S" A( Q; v* g& r
    104.                 sendMsgs = sendMsgs.replaceAll("小豆", "毛小驴");
      . d8 K0 [7 T; p% m
    105.                 sendMsgs = sendMsgs.replaceAll("人家", "伦家");* l1 s5 f' P9 C& T: |
    106.                 sendMsgs = sendMsgs.replaceAll("科帮网http://www.52itstyle.top",/ D" g; j9 X; d
    107.                         "伦家不懂官人的话了啦~");7 i/ P: }- }, D% [! O
    108.                 return sendMsgs;
      % r9 j% @* O. ~8 r  m* M4 A
    109.             }: w2 T/ A; R# M) E2 _) I
    110. }
    复制代码
    根据城市名字调用天气接口Weather.java:: c7 L5 U/ q, p( o
    1. public class Weather {
      1 t2 r$ p6 s: b* m
    2.     public  static String Weather(String cityName) throws IOException ,NullPointerException{ + s' n3 V" ]+ B7 w
    3.             String Cityid=  getCityId(cityName);% p' c( K4 \8 V' ]: X" \
    4.         // 连接中央气象台的API
      ) M& N8 y) m- f  Y" p+ w: y' q9 a
    5.         URL url = new URL("http://m.weather.com.cn/data/" + Cityid + ".html"); / T2 A+ n0 C6 j: b" u" n% P
    6.         System.out.println(url);( e/ h% R% V5 {
    7.         URLConnection  connectionData = url.openConnection();
      0 E: |. J! N) f2 x) T, ]& r
    8.         connectionData.setConnectTimeout(1000); 9 P# z: Y) }2 J4 v9 P2 r. ?/ _
    9.         StringBuilder sb = new StringBuilder(); 1 h& k$ t* x! |1 {! J3 r
    10.         try { 2 V  m; h$ R& q. {6 U2 }, K' P
    11.                 BufferedReader br = new BufferedReader(new InputStreamReader( 6 T; H9 {* ^% ~( ~8 f3 A+ W! n( K; T
    12.                     connectionData.getInputStream(), "UTF-8"));
      ' m- C9 b2 N0 `7 J
    13.             String line = null; ) N$ D- T8 o; g. {' ?" C
    14.             while ((line = br.readLine()) != null) / K4 W) [0 l3 K8 I/ R
    15.                 sb.append(line);
      3 Z7 D0 K' g8 s/ A& K6 j* X
    16.         } catch (SocketTimeoutException e) {
      5 t- ]6 i) _% |
    17.             System.out.println("连接超时"); 0 G8 s, r# F6 ^) F$ h) }, o
    18.         } catch (FileNotFoundException e) { # v( x! w- h; X3 @7 L* O; Y
    19.             System.out.println("加载文件出错"); & ]5 v# A' _5 X, p
    20.         }
      + J" c  H3 n* N% r" m
    21.          String datas = sb.toString();   
      * T2 a2 W, J( x' C4 H, x
    22.          JSONObject jsonData = JSONObject.fromObject(datas); , h. P3 S( N8 g7 U
    23.          JSONObject info = jsonData.getJSONObject("weatherinfo");
      / w+ Z. g0 v( B
    24.         //得到1到6天的天气情况
      ) h# l# u/ t* L9 R! s- ]/ a8 I
    25.         List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
      8 s* L7 M' e0 p$ K4 ?# G
    26.         sb = new StringBuilder();
      - Q$ r4 b0 h" {8 p4 ^' b) G- M
    27.         for(int i=1;i<=3;i++){% Z% K8 @; X0 z2 H! j# {% n
    28.             //得到未来6天的日期
      5 Y4 S% Z7 n; s5 Y" P
    29.             Calendar cal = Calendar.getInstance();
      1 F& A! l. l+ ^2 Q
    30.             cal.add(Calendar.DAY_OF_YEAR, i-1);
      - x: T' i6 _7 d+ F, R
    31.             Date date = cal.getTime();% }; i& |6 T0 A4 S. p. G
    32.             SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日");0 `! G7 }$ r' ^! t
    33.             Map<String,Object> map = new HashMap<String, Object>();9 Q! J+ Y  b) M, X% ^. X, |
    34.             map.put("city", info.getString("city").toString());//城市& a0 P6 u4 k7 C; ^2 S& B% t+ Q
    35.             map.put("date_y", sf.format(date));//日期) [" x$ k  m4 S- J
    36.             map.put("week", getWeek(cal.get(Calendar.DAY_OF_WEEK)));//星期
      ' l8 N( J9 h: s# p9 u( G
    37.             map.put("fchh", info.getString("fchh").toString());//发布时间
      " M' I9 c' i- x5 {
    38.             map.put("weather", info.getString("weather"+i).toString());//天气
      & u7 b- ?3 B8 K9 h. `3 O
    39.             map.put("temp", info.getString("temp"+i).toString());//温度
      7 [7 t0 A9 r1 G- {5 \" @
    40.             map.put("wind", info.getString("wind"+i).toString());//风况' p. A- {. C, n0 C& _3 J) B
    41.             map.put("fl", info.getString("fl"+i).toString());//风速' y: c+ d, ~/ T) e
    42.             map.put("index", info.getString("index").toString());// 今天的穿衣指数
      ; T6 t4 P! i/ f3 g+ B% J+ M& A
    43.             map.put("index_uv", info.getString("index_uv").toString());// 紫外指数 ; f& \7 B' p( `+ ?( P
    44.             map.put("index_tr", info.getString("index_tr").toString());// 旅游指数
      & G) T( y& c: D; h5 k
    45.             map.put("index_co", info.getString("index_co").toString());// 舒适指数
      ( z3 @9 a, Z1 c, B: q$ j  X4 H8 m
    46.             map.put("index_cl", info.getString("index_cl").toString());// 晨练指数 : _/ n* Q7 o4 F; }4 J
    47.             map.put("index_xc", info.getString("index_xc").toString());//洗车指数 9 ]) O  Y8 L, _7 U
    48.             map.put("index_d", info.getString("index_d").toString());//天气详细穿衣指数 4 Z, s( p$ k6 E+ ~% X) }
    49.             list.add(map);
      & Y$ L& ]1 u) Q  k8 R
    50.         }
      6 e% J0 o6 R: p2 q
    51.         //控制台打印出天气* K' e  b6 m8 y% ?, t$ p
    52.        for(int j=0;j<list.size();j++){
      6 r3 P* ?$ d2 x
    53.            Map<String,Object> wMap = list.get(j);. I) D) ?0 g' z& R2 {2 o
    54.            sb.append(wMap.get("city")+"\t"+wMap.get("date_y")+"\t"+wMap.get("week")+"\t", K+ c5 W: X9 f
    55.                    +wMap.get("weather")+"\t"+wMap.get("temp")+"\t"+wMap.get("index_uv")+"\n");0 u' f) I* v& ^+ p7 r3 ~1 R
    56.        }
      ) a/ v- V" u  X5 I) A
    57.        return sb.toString();
      3 W, B) i6 k9 t
    58.   
      $ d% P* a% v! e) g8 f# W7 N
    59.     } " h, L9 D8 q5 A) z; X
    60.     private static String  getWeek(int iw){. _3 R0 o) G7 v' u" f/ c( F
    61.         String weekStr = "";4 k- }# o8 E* [+ k! a- l  m2 u" t
    62.         switch (iw) {
      6 I( m/ o. l$ F7 e* D5 X& B+ G' Z+ b/ S
    63.         case 1:weekStr = "星期天";break;( i$ \/ c! Z% Z* B( w! Q
    64.         case 2:weekStr = "星期一";break;5 |3 B: I6 @9 G# a1 O
    65.         case 3:weekStr = "星期二";break;
      ' |+ L) A. _3 V2 v' \7 p) p% {
    66.         case 4:weekStr = "星期三";break;" x) G+ N  m- w, M; g3 Y9 A4 V
    67.         case 5:weekStr = "星期四";break;
      ! B' i4 Q4 r/ p; u+ ]
    68.         case 6:weekStr = "星期五";break;
      9 y3 c. P0 v  V% B" y! o& o
    69.         case 7:weekStr = "星期六";break;
      , ]7 x) R, [. Q2 M' Y- A
    70.         default:
      , g- H; m7 p4 n5 K
    71.             break;! t. E% \9 W; N9 a6 t  h
    72.         }3 [7 |! u! o& x7 S
    73.         return weekStr;
      ) Z3 b3 n2 Q. B( W$ U
    74.     }
      3 F/ ^1 B' n7 W
    75.     private static String  getCityId(String cityName){
      + A# J. E  Z/ v& d4 S6 R
    76.         Map<String,String> map = new HashMap<String, String>();
      4 p, i+ \( C5 P$ Y
    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");# f! ~+ Y, O  q. R
    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");) Y; V$ Q  ?4 s. X. N  u2 H* l4 A
    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 a' n( q. F! v0 C& P
    80.         map.put("广安","101270801");map.put("遂宁","101270701");map.put("眉山","101271501");map.put("南充","101270501");
      $ n# ?' E! Q: n, A4 c8 ?+ A
    81.         map.put("广州","101280101");map.put("深圳","101280601");map.put("潮州","101281501");map.put("韶关","101280201");
      6 v9 E0 {  n/ V/ }9 ~3 q8 u
    82.         map.put("湛江","101281001");map.put("惠州","101280301");map.put("清远","101281301");map.put("东莞","101281601");
      1 T, O6 t- l/ Y: }$ r
    83.         map.put("江门","101281101");map.put("茂名","101282001");map.put("肇庆","101280901");map.put("汕尾","101282101");
      , g4 ~1 b- K0 k- p! O1 T! E
    84.         map.put("河源","101281201");map.put("揭阳","101281901");map.put("梅州","101280401");map.put("中山","101281701");
      0 o' L3 M/ [) M" x: ]6 V# |* i4 b
    85.         map.put("德庆","101280905");map.put("阳江","101281801");map.put("云浮","101281401");map.put("珠海","101280701");
      + r8 L2 F" z' {
    86.         map.put("汕头","101280501");map.put("佛山","101280800");map.put("南宁","101300101");map.put("桂林","101300501");
      & r6 d1 S: q2 C4 S4 M4 v
    87.         map.put("阳朔","101300510");map.put("柳州","101300301");map.put("梧州","101300601");map.put("玉林","101300901");
      ' }/ d/ i3 v& a+ i; x
    88.         map.put("桂平","101300802");map.put("贺州","101300701");map.put("钦州","101301101");map.put("贵港","101300801");3 Z/ j2 K, E$ G2 I
    89.         map.put("防城港","101301401");map.put("百色","101301001");map.put("北海","101301301");map.put("河池","101301201");8 \: p. _( t+ N3 e9 b& f
    90.         map.put("来宾","101300401");map.put("崇左","101300201");map.put("昆明","101290101");map.put("保山","101290501");: ]& I$ _" z! i0 s& n  M
    91.         map.put("楚雄","101290801");map.put("德宏","101291501");map.put("红河","101290301");map.put("临沧","101291101");  `7 S. f8 ~: J' m/ i$ K
    92.         map.put("怒江","101291201");map.put("曲靖","101290401");map.put("思茅","101290901");; \& S; U; x+ _  w. U2 z0 R1 Y9 g
    93.         map.put("文山","101290601");map.put("玉溪","101290701");map.put("昭通","101291001");
      / f$ D% x$ x0 P% e1 @7 `. Z
    94.         map.put("丽江","101291401");map.put("大理","101290201");map.put("海口","101310101");1 X  E5 X! R$ \
    95.         map.put("三亚","101310201");map.put("儋州","101310205");map.put("琼山","101310102");map.put("通什","101310222");
      % x" R! s/ a% Q( Y& G+ A
    96.         map.put("文昌","101310212");map.put("乌鲁木齐","101130101");map.put("阿勒泰","101131401");map.put("阿克苏","101130801");
      6 [& a9 P* i# V+ s" V
    97.         map.put("昌吉","101130401");map.put("哈密","101131201");map.put("和田","101131301");map.put("喀什","101130901");. H0 w3 `3 o& e( X) @3 Y
    98.         map.put("克拉玛依","101130201");map.put("石河子","101130301");map.put("塔城","101131101");map.put("库尔勒","101130601");9 H- ^7 o2 I! J3 ~
    99.         map.put("吐鲁番","101130501");map.put("伊宁","101131001");map.put("拉萨","101140101");map.put("阿里","101140701");
      0 G4 N8 m8 I/ G1 ~7 l  W% P  v
    100.         map.put("昌都","101140501");map.put("那曲","101140601");map.put("日喀则","101140201");map.put("山南","101140301");6 D" L7 Z, R" ]! J* C2 a0 Z
    101.         map.put("林芝","101140401");map.put("台北","101340102");map.put("高雄","101340201");map.put("南京","101190101");. C, m- N# V6 w/ K
    102.         map.put("溧水","101190102");map.put("高淳","101190103");map.put("江宁","101190104");map.put("六合","101190105");
      0 G2 H9 B+ p: M
    103.         map.put("江浦","101190106");map.put("无锡","101190201");map.put("江阴","101190202");map.put("宜兴","101190203");
      3 r9 `+ e, V) x. T- G  a- M- c+ t
    104.         map.put("锡山","101190204");map.put("徐州","101190801");map.put("铜山","101190802");map.put("丰县","101190803");
      6 i$ l. g0 R* k6 ?' ]
    105.         map.put("沛县","101190804");map.put("邳州","101190805");map.put("睢宁","101190806");map.put("新沂","101190807");
      5 Q6 K( D0 _3 [' d: i& `, ?) ?5 V( J
    106.         map.put("常州","101191101");map.put("溧阳","101191102");map.put("金坛","101191103");map.put("武进","101191104");4 H% B5 b' W8 ~/ o( E- h+ a
    107.         map.put("苏州","101190401");map.put("常熟","101190402");map.put("张家港","101190403");map.put("昆山","101190404");) y( n& ?& D% q/ {3 |3 A; v
    108.         map.put("吴中","101190405");map.put("吴江","101190407");map.put("太仓","101190408");map.put("南通","101190501");: v% E. ^/ t; I# N, C% J( T' F; |9 X5 f7 t
    109.         map.put("海安","101190502");map.put("如皋","101190503");map.put("如东","101190504");map.put("启东","101190507");
      4 A0 p% K2 x+ E8 n
    110.         map.put("海门","101190508");map.put("通州","101190509");map.put("连云港","101191001");map.put("东海","101191002");2 }- L4 A; U, f( h; r- _
    111.         map.put("赣榆","101191003");map.put("灌云","101191004");map.put("灌南","101191005");map.put("淮安","101190901");
      % V  Q6 B. x9 {0 ]) I
    112.         map.put("金湖","101190902");map.put("盱眙","101190903");map.put("洪泽","101190904");map.put("涟水","101190905");
      ( V# ?) O8 h: o; I8 ^
    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");" Z2 X) f  E  B; K4 \3 b# x$ }
    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");
      5 b. ^8 b! x- j2 Q9 s
    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");
      1 }/ t8 y# o2 A! d9 g
    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");! {" _! {! ?* M+ d" m* h9 d
    117.         map.put("郯城","101120906");map.put("蒙阴","101120907");map.put("平邑","101120908");map.put("费县","101120909");map.put("沂水","101120910");
      7 A, h4 J, D$ K$ {. y4 Q  u! y% W
    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");# W4 B( c  J& u2 s" Z
    119.         System.out.println(cityName);* Z( s( F- M, x6 U& ]6 f
    120.         return map.get(cityName.trim());' y  ?# x2 M' \: z* A
    121.     }" t: a" ~+ }0 F1 }3 P) e- V
    122. //    public static void main(String[] args) { : K  V  G' w$ q/ k! J
    123. //        try { . \, T, v/ K* A) |! E: a0 K  E
    124. //                //System.out.println(getCityId("胶州"));% ~4 p- v! q6 i& r9 b
    125. //                Weather.Weather("上海");7 P8 D. t$ H* X8 E" d
    126. //        } catch (Exception e) {
      ' Y1 O5 [4 l, s2 U# B5 x
    127. //            e.printStackTrace();
      ; E. s$ Z2 d1 S6 l  }
    128. //        } " ]! k( [2 l' w. G. v+ b
    129. //    } 4 Z! M' I8 J1 @5 r( e3 |, i, B
    130. }
    复制代码
    2 E( ?' Q8 ^& R: l- Y

    2 u( X) ]6 n$ d+ X& @; t

    科帮网 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群 科帮网手机客户端
    快速回复 返回顶部 返回列表