完成hdfs操作相关的命令学习,并用程序来向hdfs中写入数据(语言不限,可以是shell, java,python)

  • hadoop fs -ls
  • 功能:用于列出指定目录下的文件和目录信息。
  • hadoop fs -mkdir
  • 功能:创建指定的目录。
  • hadoop fs -get
  • 功能:将 HDFS 上的文件下载至本地。
  • hadoop fs -put
  • 功能:将本地文件上传至 HDFS
  • hadoop fs -cat
  • 功能:查看文件内容。
  • hadoop fs -rm
  • 功能:删除 HDFS 上的文件或目录。

用java向hdfs中写入数据 

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
import java.net.URI;

public class HDFSWriteExample {
    public static void main(String[] args) {
        // HDFS URI
        String hdfsUri = "hdfs://localhost:9000";
        // HDFS目标文件路径
        String filePath = "/testzh/test.txt";
        // 要写入的数据
        String data = "张昊测试数据!";

        Configuration conf = new Configuration();
        conf.set("fs.defaultFS", hdfsUri);

        FileSystem fs = null;
        BufferedWriter br = null;

        try {
            // 获取HDFS文件系统实例
            fs = FileSystem.get(URI.create(hdfsUri), conf);
            // 创建输出流
            Path path = new Path(filePath);
            if (fs.exists(path)) {
                fs.delete(path, true);
            }
            br = new BufferedWriter(new OutputStreamWriter(fs.create(path, true)));
            // 写入数据
            br.write(data);
            br.flush();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (br != null) {
                    br.close();
                }
                if (fs != null) {
                    fs.close();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值