`
pengfeifei26
  • 浏览: 241029 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

通过url获取图片并保存至本地

 
阅读更多
   /**
     * 通过url获取图片并保存至本地
     */
    public  String getImgFromUrl(String urlstr) {
    	 String head_path = ConfigManager.get("head_path");
    	 String head_path_db = ConfigManager.get("head_path_db");
        int num = urlstr.indexOf('/',8);
        int extnum = urlstr.lastIndexOf('.');
        String u = urlstr.substring(0,num);
        String ext = urlstr.substring(extnum+1,urlstr.length());
        if(ext.equals("jpg") || ext.equals("jpeg") || ext.equals("jpe") || ext.equals("jfif") ||ext.equals("png") ||ext.equals("gif")){
        }else{
        	ext = "jpg";
        }
        try{
//            long curTime = System.currentTimeMillis();
//            Random random = new Random(100000000);
        	String uuid = UUID.randomUUID().toString().replace("-","");
        	// 图片的路径
        	String path = head_path + uuid + "." + ext;
        	//入库路径
        	String dataPath = head_path_db + uuid + "." + ext;
//            String fileName = String.valueOf(curTime) + "_"
//                    + random.nextInt(100000000) + ext;
            URL url = new URL(urlstr);
            URLConnection connection = url.openConnection();
            connection.setDoOutput(true);
            connection.setRequestProperty("referer", u);       
            //通过这个http头的伪装来反盗链
            BufferedImage image = ImageIO.read(connection.getInputStream());
            FileOutputStream fout=new FileOutputStream(path);
            if("gif".equals(ext)|| "png".equals(ext))
            {
                 ImageIO.write(image, ext, fout);
            }
            ImageIO.write(image, "jpg", fout);
            fout.flush();
            fout.close();
                   
            return dataPath;
        }       
        catch(Exception e)
        {
            System.out.print(e.getMessage().toString());
        }
        return "";
    }

分享到:
评论

相关推荐

    C#获取图片并保存到本地

    在C#编程环境中,获取网络上的图片并保存到本地是一个常见的任务,这通常涉及到网络请求、数据流处理以及文件操作。...通过这些步骤,你可以用C#有效地获取网络上的图片并将其保存到本地文件系统。

    IOS通过URL下载保存图片

    在iOS开发中,通过URL下载并保存图片是一项常见的任务,特别是在构建移动应用时,用户可能会需要查看、保存或分享网络上的图片。本教程将详细解释如何实现这一功能,主要涉及的知识点包括网络请求、文件系统操作和...

    QT获取网络图片并保存到本地

    在QT编程中,获取网络上的图片并保存到本地是一个常见的任务,这通常涉及到网络编程模块。QT框架提供了QNetworkAccessManager、QNetworkReply和QNetworkRequest等类来处理这种需求。接下来,我们将深入探讨这些类的...

    保存图片到本地相册

    一旦图片保存到本地,需要将文件添加到系统的媒体库,这样相册应用才能识别并显示。调用`MediaStore.Images.Media.insertImage()`方法,传入ContentResolver、图片的URI、标题和描述,将图片信息插入到媒体库。 5....

    qt写的抓取网页图片并保存到本地

    这个程序可以解析指定URL的网页内容,从中提取出所有的图片链接,并将这些图片下载保存到本地特定的目录下。 首先,我们来看一下这个程序的核心知识点: 1. **QT网络模块**:QT的网络模块提供了处理网络请求的功能...

    图片下载并且保存至本地

    在IT行业中,图片下载并保存至本地是一个常见的需求,尤其对于网页爬虫、社交媒体应用或者数据分析项目来说。这个过程涉及到网络请求、数据处理以及文件存储等多个环节。下面将详细讲解这个过程及其相关知识点。 ...

    php获取CSS文件中图片地址并保存到本地的类.zip

    - 最后,将下载的图片保存到指定的本地目录,并返回新的本地图片路径,以便在CSS中替换原有的URL。 2. **正则表达式**: CSS文件中的背景图像URL可以通过正则表达式匹配。例如,`url\(('|")?([^)'"]+)\1?\)` 可以...

    cocoscreator 保存图片到本地

    这通常通过调用`toDataURL`方法获取Canvas的内容作为data URL,然后创建一个新的Image对象并赋值这个URL,等待加载完成后再进行后续处理。 下面是一个简单的示例: ```javascript function canvasToImage(canvas) ...

    c#通过url下载到本地文件.txt

    C# 通过文件url 下载 文件,只是最简单的方法。其实要写一个下载的方法是要很复杂的过程的。可以自定义文件保存地址文件夹,图片 文档表格应该都有可以改个后缀就好

    微信小程序服务器上获取图片保存本地源码

    在微信小程序中,获取服务器上的图片资源并保存到本地是一个常见...以上就是微信小程序中获取服务器图片资源并保存到本地的主要步骤和涉及的知识点,通过实践和理解这些概念,可以更好地开发和优化小程序中的图片功能。

    PB通过URL下载局域网或者互联网上的图片

    接着,使用NetRequest对象发送GET请求到指定的URL,获取图片的响应数据。 例如,以下是一个简单的PowerScript示例,展示了如何通过URL下载图片: ```powerscript // 创建NetConnection对象 NetConnection conn = ...

    使用Springboot上传图片并将URL保存到数据库中

    本示例将详细讲解如何实现一个简单的文件上传功能,将图片上传至服务器,并将图片的URL保存到数据库中。 首先,我们需要在Spring Boot项目中引入所需的依赖。对于文件上传,Spring Boot本身提供了`spring-boot-...

    富文本编辑器保存网络图片到本地

    本篇文章将详细介绍一种简易且实用的方法来实现富文本编辑器中的网络图片保存至本地的功能。 #### 关键概念理解 1. **富文本编辑器**:富文本编辑器是一种用于创建和编辑格式化文档的工具。它允许用户输入文本并...

    android从服务器端下载图片并保存在本地sdcard里并在界面滚动显示出来

    下载图片时,你需要创建一个GET请求,指定图片的URL,并通过响应体读取二进制流。 2. **保存图片到SDCard**: 首先,需要检查SDCard是否可用,并获取外部存储的写入权限。Android Marshmallow(API 23)之后,需要...

    android studio 保存图片到本地相册

    在Android开发中,将网络上的图片保存到用户的本地相册是一项常见的需求。Android Studio作为官方推荐的集成开发环境,提供了方便的工具和方法来实现这一功能。本教程将详细讲解如何利用Android Studio将图片从网络...

    Python爬虫获取图片并下载保存至本地的实例

    在本篇文章中,我们将通过一个实例来探讨如何使用Python编写爬虫来获取网络上的图片并将其下载保存至本地。这个过程涉及网络请求、HTML内容解析、图片资源的定位、文件的本地保存等多个步骤。下面将详细解析代码示例...

    php获取CSS文件中图片地址并保存到本地的类

    `downloadImages`方法遍历这些URL,调用`file_get_contents`获取图片数据,然后使用`file_put_contents`保存到本地。 注意,处理相对路径时,需要将CSS文件URL与图片URL结合起来,确保图片被保存在正确的目录下。这...

    截取屏幕图像并保存图片 根据Url获取当前网页的快照

    综上所述,通过C#我们可以轻松地截取屏幕快照和根据URL获取网页快照。这两种技术在许多实际应用中都十分有用,例如创建用户操作日志、页面自动化测试或监控网站变化等。了解并掌握这些技能,将有助于提升你在IT领域...

    易语言网上下载图片并保存显示

    请求成功后,返回的数据可以通过“接收缓冲区”获取,然后用“文件写入”命令将数据写入到本地文件。 以下是一个简单的示例代码片段,展示了如何使用易语言下载图片: ```易语言 .网络连接 = 创建网络连接对象() ....

Global site tag (gtag.js) - Google Analytics