java 把已知下载路径的文件复制到本地

本文详细介绍了Apache Commons IO库中的文件操作方法,包括写文件、读文件、删除文件、移动文件、复制文件及获取文件信息等功能。通过示例代码展示了如何使用这些方法进行实际操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

org.apache.commons.io.FileUtils.copyURLToFile(new URL("http://127.0.0.1:8080/test/test2.doc"), new File("e:/test/o.doc"));


FileUtils操作介绍(摘自http://www.sctarena.com/Article/Article.asp?nid=4180):

1.写 文件/文件夹  
Java代码  收藏代码  

    /* 写文件   
     * 1.这里只列出3种方式全参数形式,api提供部分参数的方法重载   
     * 2.最后一个布尔参数都是是否是追加模式   
     * 3.如果目标文件不存在,FileUtils会自动创建   
     * */    
    //static void:write(File file, CharSequence data, String encoding, boolean append)     
    FileUtils.write(new File("D:/a/b/cxyapi.txt"), "程序换api","UTF-8",true);    
        
    //static void:writeLines(File file, Collection<?> lines, boolean append)     
    List<String> lines=new ArrayList<String>();    
    lines.add("欢迎访问:");lines.add("www.cxyapi.com");    
    FileUtils.writeLines(new File("D:/a/b/cxyapi.txt"),lines,true);    
        
    //static void:writeStringToFile(File file, String data, String encoding, boolean append)     
    FileUtils.writeStringToFile(new File("D:/a/b/cxyapi.txt"), "作者:cxy", "UTF-8",true);    

   

    2.读 文件/文件夹  
Java代码  收藏代码  

    //读文件    
    //static String:readFileToString(File file, String encoding)     
    System.out.println(FileUtils.readFileToString(new File("D:/a/b/cxyapi.txt"), "UTF-8"));    
        
    //static List<String>:readLines(File file, String encoding)     
    System.out.println(FileUtils.readLines(new File("D:/a/b/cxyapi.txt"), "UTF-8")); //返回一个list    

   

    3.删除 文件/文件夹  
Java代码  收藏代码  

    //删除目录    
    //static void:deleteDirectory(File directory)     
    FileUtils.deleteDirectory(new File("D:/not/cxyapi"));    
    //www.sctarena.com  
    //static boolean:deleteQuietly(File file)     
    FileUtils.deleteQuietly(new File("D:/not/cxyapi")); //文件夹不是空任然可以被删除,永远不会抛出异常    

   

    4.移动 文件/文件夹  
Java代码  收藏代码  

    //移动文件 或 文件夹    
    //static void:moveDirectory(File srcDir, File destDir)     
    FileUtils.moveDirectory(new File("D:/cxyapi1"), new File("D:/cxyapi2")); //注意这里 第二个参数文件不存在会引发异常    
    //static void:moveDirectoryToDirectory(File src, File destDir, boolean createDestDir)     
    FileUtils.moveDirectoryToDirectory(new File("D:/cxyapi2"), new File("D:/cxyapi3"), true);    
    /* 上面两个方法的不同是:   
     * moveDirectory:D:/cxyapi2里的内容是D:/cxyapi1的内容。   
     * moveDirectoryToDirectory:D:/cxyapi2文件夹移动到到D:/cxyapi3里   
     *    
     * 下面的3个都比较简单没提供示例,只提供了api   
     * 其中moveToDirectory和其他的区别是 它能自动识别操作文件还是文件夹   
     */    
    //static void:moveFileToDirectory(srcFile, destDir, createDestDir)    
    //static void:moveFile(File srcFile, File destFile)     
    //static void:moveToDirectory(File src, File destDir, boolean createDestDir)    

   

    5.copy  
Java代码  收藏代码  

    //结果是cxyapi和cxyapi1在同一目录    
    FileUtils.copyDirectory(new File("D:/cxyapi"), new File("D:/cxyapi1"));     
    //结果是将cxyapi拷贝到cxyapi2下    
    FileUtils.copyDirectoryToDirectory(new File("D:/cxyapi"), new File("D:/cxyapi2"));    
        
    //拷贝文件    
    FileUtils.copyFile(new File("d:/cxyapi.xml"), new File("d:/cxyapi.xml.bak"));    
    //拷贝文件到目录中    
    FileUtils.copyFileToDirectory(new File("d:/cxyapi.xml"), new File("d:/cxyapi"));    
    //拷贝url到文件    
    FileUtils.copyURLToFile(new URL("http://www.cxyapi.com/rss/cxyapi.xml"), new File("d:/cxyapi.xml"));    

   

    6.其他  
Java代码  收藏代码  

    //判断是否包含文件或者文件夹    
    boolean b=FileUtils.directoryContains(new File("D:/cxyapi"), new File("D:/cxyapi/cxyapi.txt"));    
    System.out.println(b);    
        
    //获得临时目录 和 用户目录    
    System.out.println(FileUtils.getTempDirectoryPath());    
    System.out.println(FileUtils.getUserDirectoryPath());    
        
    //打开流,如果不存在创建文件及其目录结构    
    //第二个参数表示 文件流是否是追加方式    
    FileOutputStream fos=FileUtils.openOutputStream(new File("D:/cxyapi/cxyapi.txt"),true);    
    fos.write(new String("欢迎访问:www.cxyapi.com\r\n").getBytes());    
    fos.close();    
        
    //文件 或 文件夹大小    
    System.out.println(FileUtils.sizeOf(new File("D:/cxyapi")));    
    System.out.println(FileUtils.sizeOfDirectory(new File("D:/cxyapi")));  

<think>好的,用户想安装jdk1.7.0_17到本地环境。首先,我需要回忆不同操作系统下的安装步骤。根据提供的引用,有Windows和Linux的配置方法。 对于Windows系统,引用[1]提到了设置JAVA_HOME、PATH和CLASSPATH。所以用户需要下载对应版本的JDK安装包,运行安装程序,然后配置环境变量。可能需要检查下载的安装包是否正确,特别是旧版本可能不在Oracle官网上直接提供,需要用户通过其他渠道获取。 Linux方面,引用[3]描述了创建目录、复制安装包、解压并配置环境变量的步骤。同样需要下载对应的tar.gz文件,解压到指定目录,然后设置环境变量。此外,引用[2]提到了使用alternatives命令管理多个Java版本,这可能对用户有用,特别是如果需要切换不同JDK版本的话。 还要注意用户可能需要设置执行权限,比如在Linux下使用chmod +x命令。同时,安装后的验证步骤也很重要,比如运行java -version来确认安装成功。另外,引用[5]中的Tomcat启动关闭步骤可能关联到后续的Java应用部署,但用户当前的问题集中在JDK安装,所以暂时不需要涉及。 需要提醒用户注意,JDK 1.7已经是较旧的版本,可能存在安全风险或兼容性问题,建议如果可能的话升级到更新的版本。但用户明确指定要安装1.7.0_17,所以应按照要求提供步骤。 另外,用户提供的引用中有关于JDK路径的例子,比如/jdk1.7.0_45,需要替换成用户实际下载的版本号。同时,环境变量配置是否正确会影响命令的执行,所以需要指导用户仔细检查路径是否存在。 最后,生成相关问题时要围绕JDK安装、环境配置、多版本管理等方面,帮助用户扩展相关知识。</think>### 如何安装 JDK1.7.0_17 到本地环境? #### 一、Windows 系统安装步骤 1. **下载 JDK 安装包** - 从 Oracle 官网或可信来源获取 `jdk-7u17-windows-x64.exe`(注意版本号需完全匹配)。 - 若官网无旧版本,可尝试通过[Oracle存档库](https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html)查找[^4]。 2. **运行安装程序** - 双击安装文件,按向导提示选择安装路径(如默认路径 `C:\Program Files\Java\jdk1.7.0_17`)。 3. **配置环境变量** - 右键“此电脑” → 属性 → 高级系统设置 → 环境变量 → 系统变量: - 新建变量 `JAVA_HOME`,值为 `C:\Program Files\Java\jdk1.7.0_17`[^1]。 - 编辑 `Path` 变量,添加 `%JAVA_HOME%\bin`。 - 新建变量 `CLASSPATH`,值为 `.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;`。 4. **验证安装** - 打开命令提示符,输入: ```bash java -version ``` - 若显示 `java version "1.7.0_17"` 表示安装成功。 --- #### 二、Linux 系统安装步骤 1. **下载并解压安装包** - 通过终端下载或手动上传 `jdk-7u17-linux-x64.tar.gz`。 - 创建安装目录并解压: ```bash sudo mkdir /usr/local/java sudo tar -zxvf jdk-7u17-linux-x64.tar.gz -C /usr/local/java ``` 2. **配置环境变量** - 编辑 `~/.bashrc` 或 `/etc/profile` 文件: ```bash export JAVA_HOME=/usr/local/java/jdk1.7.0_17 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ``` - 使配置生效: ```bash source ~/.bashrc ``` 3. **多版本管理(可选)** - 使用 `alternatives` 命令关联 JDK: ```bash sudo alternatives --install /usr/bin/java java $JAVA_HOME/bin/java 30000 ``` - 通过 `alternatives --config java` 切换版本[^2]。 4. **验证安装** - 输入 `java -version`,确认输出包含 `1.7.0_17`。 --- #### 三、注意事项 - **兼容性问题**:JDK 1.7 已停止官方支持,部分新框架可能不兼容,建议测试后再用于生产环境。 - **安全风险**:旧版本存在已知漏洞,需评估安全影响。 - **路径一致性**:确保配置的 `JAVA_HOME` 与实际解压路径完全匹配。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值