Java之复制图片

从文件夹中复制图片

从这个文件夹:

复制到这个空的文件夹:

代码如下:

 import java.io.*;
import java.util.Scanner;

    /**
     * 普通文件的复制
     */
    public class TestDome10 {
        public static void main(String[] args) {
            // 输入两个路径
            // 从哪里(源路径)拷贝到哪里(目标路径)
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入要拷贝源文件的路径:");
            String srcPath = scanner.next("G:/photo/sb/kkkk.jpeg");
            System.out.println("请输入要拷贝到的目标路径:");
            String destPath = scanner.next("G:/Program/xxx/kkkk.jpeg");
            File srcFile = new File(srcPath);
            if (!srcFile.isFile()) {
                //如果不是一个文件(或者是个目录/不存在)
                System.out.println("您当前输入的源文件的路径有误!");
                return;
            }

            File destFile = new File(destPath);
            if (destFile.isFile()) {
                //如果该文件已经存在,也不能进行拷贝
                System.out.println("您输入的目标路径有误");
                return;
            }

            //完成拷贝操作
            try (InputStream inputStream = new FileInputStream(srcFile);
                 OutputStream outputStream = new FileOutputStream(destFile)) {
                byte[] buffer = new byte[1024];
                while (true) {
                    int b = inputStream.read(buffer);
                    if (b == -1) {
                        break;
                    }
                    outputStream.write(buffer);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

 

 ..........................................................................................................................................................

从网址中复制图片,选择图片:

网址:

小黄鸡表情包 - 高清图片,堆糖,美图壁纸兴趣社区 

复制到此文件夹中 

代码如下:

import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class Copy {
    public static void main(String[] args) {
        InputStream inputStream = null;
        FileOutputStream outputStream = null;
        try {         //输入要复印的网址
            URL url = new URL("https://c-ssl.dtstatic.com/uploads/item/202004/09/20200409235851_xwrjt.thumb.1000_0.jpg");
            URLConnection urlConnection = url.openConnection();
            inputStream = urlConnection.getInputStream();
            File file = new File("G:/Program/xxx/kkkk.jpg");   //输入要复印到的目标地址
            outputStream = new FileOutputStream(file);
            byte[] buffer = new byte[1024];
            int length = 0;
            while ((length = inputStream.read(buffer)) != -1){
                outputStream.write(buffer,0,length);
            }
        }catch (IOException e){
            throw new RuntimeException(e);
        }finally {
            try {
                outputStream.close();
            }catch (IOException e){
                throw new RuntimeException(e);
            }try {
                inputStream.close();
            }catch (IOException e){
                throw new RuntimeException(e);
            }
        }
    }
}

 运行效果如图:

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/576690.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ssm智能停车场管理系统

视频演示效果: SSMvue智能停车场 摘 要 本论文主要论述了如何使用JAVA语言开发一个智能停车场管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述智能停车…

2024多用户商城系统哪家产品好

在当今激烈的电商竞争中,搭建一个功能强大、性能稳定的多用户商城系统至关重要。针对这一需求,以下是我为您推荐的五款优秀多用户商城系统,它们在功能、定制性、安全性和用户体验方面均表现出色,为您的电商平台搭建提供了可靠的解…

C++从入门到精通——C++动态内存管理

C动态内存管理 前言一、C/C内存分布分类1分类2题目选择题sizeof 和 strlen 区别示例sizeofstrlen 二、C语言中动态内存管理方式malloc/calloc/realloc/free示例例题malloc/calloc/realloc的区别malloc的实现原理 三、C内存管理方式new/delete操作内置类型new和delete操作自定义…

底层逻辑(1) 是非对错

底层逻辑(1) 是非对错 关于本书 这本书的副标题叫做:看清这个世界的底牌。让我想起电影《教父》中的一句名言:花半秒钟就看透事物本质的人,和花一辈子都看不清事物本质的人,注定是截然不同的命运。 如果你看过梅多丝的《系统之美…

Lagent AgentLego 智能体应用搭建-作业六

本次课程由Lagent&AgentLego 核心贡献者樊奇老师讲解【Lagent & AgentLego 智能体应用搭建】课程。分别是: Agent 理论及 Lagent&AgentLego 开源产品介绍Lagent 调用已有 Arxiv 论文搜索工具实战Lagent 新增自定义工具实战(以查询天气的工具…

不对称催化(三)- 动态动力学拆分动态动力学不对称转化

一、动力学拆分的基本概念: 动力学拆分的最大理论产率为50%,通过的差异可以将两个对映异构体转化为不同构型的产物,通常情况下使用两个不同反应路径来实现。但是化学家们提供了一个更加实用的方法,通过底物的构型变化实现高于50%的…

【Leetcode】377. 组合总和 Ⅳ

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接🔗 给你一个由 不同 整数组成的数组 n u m s nums nums,和一个目标整数 t a r g e t target target 。请你从 n u m s nums nums 中找出并返回总和为 t a r g e t targ…

MySQL随便聊----之MySQL的调控按钮-启动选项和系统变量

-------MySQL是怎么运行的 基本介绍 如果你用过手机,你的手机上一定有一个设置的功能,你可以选择设置手机的来电铃声、设置音量大小、设置解锁密码等等。假如没有这些设置功能,我们的生活将置于尴尬的境地,比如在图书馆里无法把手…

炫云云渲染:免费体验与高性价比的首选,设计师们的渲染利器

使用云渲染是要收费的,如果你是第一次使用,是可以白嫖一波云渲染的,所有的云渲染都会或多或少送一些渲染券,你可以用它们送的渲染券免费渲一波图。但是不能一直白嫖,再次注册账号人家就不会送体验券了,有些…

茴香豆:搭建你的RAG智能助理-作业三

本次课程由书生浦语社区贡献者【北辰】老师讲解【茴香豆:搭建你的 RAG 智能助理】课程。分别是: RAG 基础介绍茴香豆产品简介使用茴香豆搭建RAG知识库实战 课程视频:https://www.bilibili.com/video/BV1QA4m1F7t4/ 课程文档:ht…

为什么近年来机器学习这么火!!

机器学习(Machine Learning)是一种人工智能(AI)的分支,它让计算机能够通过数据学习和改进,而无需明确的编程。这意味着机器学习系统可以从经验中学习,逐步提高其性能。它基于统计学和数学算法&a…

OpenHarmony实战开发-按钮 (Button)

Button是按钮组件,通常用于响应用户的点击操作,其类型包括胶囊按钮、圆形按钮、普通按钮。Button做为容器使用时可以通过添加子组件实现包含文字、图片等元素的按钮。具体用法请参考Button。 创建按钮 Button通过调用接口来创建,接口调用有…

Unity入门实践小项目

必备知识点 必备知识点——场景切换和游戏退出 必备知识点——鼠标隐藏锁定相关 必备知识点——随机数和Unity自带委托 必备知识点——模型资源的导入 实践项目 需求分析 UML类图 代码和资源导入 开始场景 场景装饰 拖入模型和添加脚本让场景动起来 开始界面 先用自己写的GUI…

贪吃蛇撞墙功能的实现 和自动行走刷新地图 -- 第三十天

1.撞墙 1.1最初的头和尾指针要置为空,不然是野指针 1.2 在增加和删除节点后,判断是否撞墙,撞墙则初始话蛇 1.3在撞墙后初始化蛇,如果头不为空就撞墙,得定义临时指针指向头,释放头节点 2.自动刷新地图 2.1…

4 -26

4-26 1 英语单词100个一篇六级翻译 2 div 4 补题目 3 概率论期中卷子一张,复习复习。 4 备课ing 晚上出去炫饭,串串香,无敌了。 中间一些模拟题是真的恶心,思维题是真的想不到,感觉自己就是一个废物呢。 1.是将一个数…

JUC之线程、线程池

一、start与run方法 start方法开启一个新线程,异步执行。 run方法同步执行,不会产生新的线程。 start方法只能执行一次,run方法可以执行多次。 二、一些方法 sleep() 线程睡眠 两种方式调用: Thread.sleep(1000);TimeUnit.…

Kafka 3.x.x 入门到精通(06)Kafka进阶

Kafka 3.x.x 入门到精通(06)——对标尚硅谷Kafka教程 3. Kafka进阶3.1 Controller选举3.2 Broker上线下线3.3 数据偏移量定位3.4 Topic删除3.5 日志清理和压缩3.7 页缓存3.8 零拷贝3.9 顺写日志3.10 Linux集群部署3.10.1 集群规划3.10.2 安装虚拟机(略)3…

Ubuntu下载的nginx的位置

位置在/etc/nginx 启动nginx systemctl status nginx上面的命令不合适,就重启nginx sudo service nginx restart 关闭nginx nginx -s stop Ubuntu默认的html地址在该文件夹中的default中: /etc/nginx/sites-available if ($http_host ~* "^(w…

怎么用AI绘画进行人物修复?

用过AI绘画生成人物图片的朋友们是不是都碰到过这样的问题:诡异的造型、崩坏的五官、离谱的手指头、乱七八糟的背景...指望AI一次性生成百分百完美的图貌似有点难啊。 现在AI绘画有了【脸部修复】【手部修复】功能,就能够轻松解决这些的问题了&#xff0…

ESLint 、 e2e test 学习

Lint和Format的区别: Lint只会告诉你代码中的错误或者不符合规范的地方,而Format是用来对格式作调整的 HTML/tpl:HTMLLint CSS/SCSS:Stylelint JS/JSX:Eslint JSLint:古老,不能配置和扩展JSHin…
最新文章