栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

hdfs java api操作hdfs 若文件不存在则创建,否则进行文件追加

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

hdfs java api操作hdfs 若文件不存在则创建,否则进行文件追加

hdfs文件创建和内容的追加
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import java.io.FileInputStream;
import java.io.IOException;
import java.net.URI;

public class HDFSTest {
    private FileSystem fileSystem;
  	//testAppend调用前执行初始化操作
    @Before
    public void init() throws IOException, InterruptedException {
        Configuration conf = new Configuration();
        //设置文件副本数
        conf.set("dfs.replication", "3");
        fileSystem = FileSystem.get(URI.create("hdfs://hadoop102:8020"), conf, "cz");
    }
    //testAppend调用后执行资源释放操作
    @After
    public void destroy() throws IOException {
        if (fileSystem != null) {
            fileSystem.close();
        }
    }
    @Test
    public void testAppend() throws IOException {
        Path path = new Path("/wcinput/m.txt");
        FSDataOutputStream append=null;
        if(fileSystem.exists(path)){
            append= fileSystem.append(path);
        }else {
            append=fileSystem.create(path);
        }
        FileInputStream fileInputStream = new FileInputStream("F:\百度云盘文档\大数据学习\V4.1.docx");
        byte[] bytes = new byte[1024 *1024];
        int a=0;
        while ((a=fileInputStream.read(bytes))!=-1){
            append.write(bytes,0,a);
        }
        append.close();
        fileInputStream.close();

    }
}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/988296.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号