/**
* 远程下载文件
* @param filePath 文件网络地址
*/
public static void DownAndReadFile(String filePath,String dirPath) throws Exception {
//检查指定目录,用户没有指定目录 抛出异常提示用户
if(dirPath==null||dirPath.length()==0)throw new Exception("指定路径目录不能为空");
//创建file文件对象
File savePath = new File(dirPath);
//判断文件目录是否存在,不存在即创建目录
if (!savePath.exists()) {
savePath.mkdir();
}
String[] urlname = filePath.split("/");
int len = urlname.length-1;
//获取文件名
String uname = urlname[len];
File file = new File(savePath+"//"+uname);
//创建新文件
if(file!=null && !file.exists()){
file.createNewFile();
}
//输出流
OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(file));
URL url = new URL(filePath);
//获取链接
HttpURLConnection uc = (HttpURLConnection) url.openConnection();
uc.setDoInput(true);//设置是否要从 URL 连接读取数据,默认为true
uc.connect();
//获取输入流,读取文件
InputStreamReader in = new InputStreamReader(uc.getInputStream());
char[] buffer = new char[4*1024];
int length;
//读取文件
while((length=in.read(buffer))!= -1){
//写出
out.write(buffer, 0, length);
}
out.flush();
in.close();
out.close();
}
Java将远程文件存储到本地指定的目录
于 2022-03-18 23:45:19 首次发布