android网络图片的下载

android网络图片的下载

 1 /**

 2      * Get image from newwork

 3      * 

 4      * @param path

 5      *            The path of image

 6      * @return byte[]

 7      * @throws Exception

 8      */

 9     public byte[] getImage(String path) throws Exception {

10         URL url = new URL(path);

11         HttpURLConnection conn = (HttpURLConnection) url.openConnection();

12         conn.setConnectTimeout(5 * 1000);

13         conn.setRequestMethod("GET");

14         InputStream inStream = conn.getInputStream();

15         if (conn.getResponseCode() == HttpURLConnection.HTTP_OK) {

16             return readStream(inStream);

17         }

18         return null;

19     }

20 

21     /**

22      * Get data from stream

23      * 

24      * @param inStream

25      * @return byte[]

26      * @throws Exception

27      */

28     public static byte[] readStream(InputStream inStream) throws Exception {

29         ByteArrayOutputStream outStream = new ByteArrayOutputStream();

30         byte[] buffer = new byte[1024];

31         int len = 0;

32         while ((len = inStream.read(buffer)) != -1) {

33             outStream.write(buffer, 0, len);

34         }

35         outStream.close();

36         inStream.close();

37         return outStream.toByteArray();

38     }

39 

40     /**

41      * 保存文件

42      * 

43      * @param bm

44      * @param fileName

45      * @throws IOException

46      */

47     public void saveFile(byte[] data, String fileName) throws IOException {

48         File dirFile = new File(Constant.PATH_PIC);

49         if (!dirFile.exists()) {

50             dirFile.mkdir();

51         }

52         File myCaptureFile = new File(Constant.PATH_PIC + fileName);

53         BufferedOutputStream bos = new BufferedOutputStream(

54                 new FileOutputStream(myCaptureFile));

55         Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);

56         bitmap.compress(Bitmap.CompressFormat.JPEG, 80, bos);

57         bos.flush();

58         bos.close();

59     }

60 

61     /**

62      * 加载本地图片

63      * 

64      * @param url

65      * @return

66      */

67     public static Bitmap getLoacalBitmap(String url) {

68         try {

69             FileInputStream fis = new FileInputStream(url);

70             return BitmapFactory.decodeStream(fis); // /把流转化为Bitmap图片

71 

72         } catch (FileNotFoundException e) {

73             e.printStackTrace();

74             return null;

75         }

76     }

 

你可能感兴趣的:(android)