java将数据写入文件hdfs按行写入_读取hdfs中文件内容并写入本地文件

1.[代码][Java]代码

package cn.kissoft.hadoop.week04;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.FileSystem;

import org.apache.hadoop.fs.Path;

import org.apache.hadoop.io.IOUtils;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.net.URI;

/**

* 3 2的反向操作,在HDFS中生成一个大约100字节的文本文件,写一段程序(可以利用Java API或C API),

* 读入这个文件,并将其第101-120字节的内容写入本地文件系统成为一个新文件,提供代码和执行结果演示抓图

*/

public class Homework3 {

public static void main(String[] args) throws Exception {

String uri = "hdfs://bd11:9000/user/wukong/test/poem.txt";

Configuration conf = new Configuration();

FileSystem fs = FileSystem.get(URI.create(uri), conf);

InputStream in = null;

FileOutputStream fos = new FileOutputStream(new File("poem_download.txt"));

try {

in = fs.open(new Path(uri));

in.skip(100);

IOUtils.copyBytes(in, fos, 20, 4096, false);

} finally {

IOUtils.closeStream(in);

IOUtils.closeStream(fos);

}

}

}


版权声明:本文为weixin_30588381原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。