Hadoop descarga archivos a través de URL

Hadoop descarga archivos a través de URL: tenga en cuenta lo siguiente

InputStream inputStream = new URL ("hdfs: // Master: 9000 / user / hadoop / file1.txt") .openStream (); // Obtener el flujo de entrada del archivo

La ruta dentro es la dirección IP y el número de puerto de su hadoop en ejecución. El número de puerto se refiere al número de puerto configurado en core-site.xml . La ruta del archivo detrás de hdfs es

FileOutputStream outputStream = new FileOutputStream (new File ("/ home / hadoop / Desktop / file1_out.txt")); Obtener el flujo de salida del archivo

nuevo archivo ("/ home / hadoop / Desktop / file1_out.txt") Esta ruta debe terminar con un archivo, no una carpeta. Si no hay ningún archivo, se creará automáticamente


import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.URL;
import org.apache.commons.compress.utils.IOUtils;
import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;

public class urlHdfsDemo {
	public static void main(String [] args) throws Exception {
	URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());//注册hdfs的URL
	InputStream inputStream = new  URL("hdfs://Master:9000/user/hadoop/file1.txt").openStream();//获取文件输入流
	FileOutputStream outputStream = new FileOutputStream(new File("/home/hadoop/Desktop/file1_out.txt"));获取文件输出流
	IOUtils.copy(inputStream, outputStream);//实现文件的拷贝
	IOUtils.closeQuietly(inputStream);//关闭流
	IOUtils.closeQuietly(outputStream);
	
	}		
		

}

Supongo que te gusta

Origin blog.csdn.net/NewDay_/article/details/108846113
Recomendado
Clasificación