千家信息网

通过hadoopAPI访问文件

发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,/*** 通过Hadoop api访问* @throws IOException*/@Testpublic void readFileByAPI() throws IOException{Config
千家信息网最后更新 2025年02月07日通过hadoopAPI访问文件

/**

* 通过Hadoop api访问

* @throws IOException

*/

@Test

public void readFileByAPI() throws IOException{

Configuration conf = new Configuration();

conf.set("fs.defaultFS", "hdfs://192.168.75.201:8020/");

FileSystem fs = FileSystem.get(conf);

Path path = new Path("/user/index.html");

FSDataInputStream fis =fs.open(path);

byte[] bytes = new byte[1024];

int len = -1;

ByteArrayOutputStream baos = new ByteArrayOutputStream();

while((len = fis.read(bytes))!=-1){

baos.write(bytes, 0, len);

}

System.out.println(new String(baos.toByteArray()));

fis.close();

baos.close();



}

第二种方式:

/**

* 通过hadoop api访问

* @throws IOException

*/

@Test

public void readFileByAPI2() throws IOException{

Configuration conf = new Configuration();

conf.set("fs.defaultFS", "hdfs://192.168.75.201:8020/");

FileSystem fs = FileSystem.get(conf);

Path path = new Path("/user/index.html");

FSDataInputStream fis =fs.open(path);

ByteArrayOutputStream baos = new ByteArrayOutputStream();

IOUtils.copyBytes(fis, baos, 1024);

System.out.println(new String(baos.toByteArray()));

fis.close();

baos.close();



}


0