package com.czxy;
import com.sun.jndi.toolkit.url.Uri;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.*;
import org.apache.hadoop.io.IOUtils;
import java.net.URI;
/**
* @author 550894211@qq.com
* @version v 1.0
* @date 2019/11/7
*
* 将本地的多个小文件拼接成大文件
*/
public class Test02 {
//HDFS文件系统的地址
private static final String HDFS_PATH = "hdfs://192.168.100.109:8020";
public static void main(String[] args) throws Exception {
//实例化对象
Configuration configuration = new Configuration();
FileSystem fs = FileSystem.get(new URI(HDFS_PATH), configuration,"root");
//创建文件 返回输出流
FSDataOutputStream os = fs.create(new Path("/aaaa/1234.txt"));
//获取本地文件系统对象
LocalFileSystem local = FileSystem.getLocal(configuration);
FileStatus[] fileStatuses = local.listStatus(new Path("file:/H:\\网易云音乐"));
for (FileStatus fileStatus : fileStatuses) {
//获取文件输入流
System.out.println(fileStatus.getPath());
FSDataInputStream is = local.open(fileStatus.getPath());
IOUtils.copyBytes(is, os, 4096);
os.flush();
is.close();
}
os.close();
}
}
HDFS将本地的多个小文件拼接成大文件上传到HDFS文件系统
原创
©著作权归作者所有:来自51CTO博客作者大数据面试宝典的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
大文件上传
上传基本上是这样的: 1. 首先传送目标文件的工程分类、路径和名称,以及文件的m
c# JS Jquery JS Jquery Plugin 上传 客户端 -
VUE-超大文件上传-如何上传文件-大文件上传
客户那边是政府单位,所以要求提供技术支持服务,数据库用了MySQL,达梦,要求提供前端,后端,控件源代码,需要提供手机
vue断点续传 vue分片上传 vue分块上传 vue上传文件夹 vue大文件上传