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);
}
}
}