너는 매우 익숙하다고 생각하니?

3190 단어
이 코드를 보니...너 무슨 느낌이야!
그것을 보고 나는 비교적 친절했다. 마치 우연히 고인을 만난 것 같다.일단 한번 복습을 해봤습니다!!자신을 베껴서 한 번 썼는데, 그 속에서 즐겼다.
이 코드는 내가 공부할 때를 떠올리게 한다. 그때 Output Stream Input Stream이 혼란스러워서 오랫동안 고민했다. 물론 지금까지 보지 않으면 잘 쓰지 못했을 수도 있다...
xutils,volley,okhttp,asynck 등을 사용하지 않기 전에 처음에 우리에게 이렇게 써 달라고 부탁했습니다.
public class NetUtils {
        public static String post(String url, String content) {
            HttpURLConnection conn = null;
            try {

                URL mURL=new URL(url);
                conn= (HttpURLConnection) mURL.openConnection();
                conn.setRequestMethod("POST");
                conn.setReadTimeout(5000);
                conn.setConnectTimeout(10000);
                conn.setDoOutput(true);

                String data = content;
                OutputStream out = conn.getOutputStream();
                out.write(data.getBytes());
                out.flush();
                out.close();


                int responseCode = conn.getResponseCode();
                if (responseCode == 200) {

                    InputStream is = conn.getInputStream();
                    String response = getStringFromInputStream(is);
                    return response;
                } else {
                    throw new NetworkErrorException("response status is "+responseCode);
                }


            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                if (conn != null) {
                    conn.disconnect();//     
                }
            }

            return null;
        }

        public static String get(String url) {
            HttpURLConnection conn = null;
            try {
                //   string url  URL  
                URL mURL = new URL(url);
                conn = (HttpURLConnection) mURL.openConnection();

                conn.setRequestMethod("GET");
                conn.setReadTimeout(5000);
                conn.setConnectTimeout(10000);

                int responseCode = conn.getResponseCode();
                if (responseCode == 200) {

                    InputStream is = conn.getInputStream();
                    String response = getStringFromInputStream(is);
                    return response;
                } else {
                    throw new NetworkErrorException("response status is "+responseCode);
                }

            } catch (Exception e) {
                e.printStackTrace();
            } finally {

                if (conn != null) {
                    conn.disconnect();
                }
            }

            return null;
        }

        private static String getStringFromInputStream(InputStream is)
                throws IOException {
            ByteArrayOutputStream os = new ByteArrayOutputStream();
            byte[] buffer = new byte[1024];
            int len = -1;
            while ((len = is.read(buffer)) != -1) {
                os.write(buffer, 0, len);
            }
            is.close();
            String state = os.toString();//             ,      utf-8(       )
            os.close();
            return state;
        }
    }

좋은 웹페이지 즐겨찾기