首页 / HADOOP / Hadoop文件上传和下载函数
Hadoop文件上传和下载函数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Hadoop文件上传和下载函数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2153字,纯文字阅读大概需要4分钟。
内容图文
![Hadoop文件上传和下载函数](/upload/InfoBanner/zyjiaocheng/1032/bb27fafd4242432da4af16b2506c8ff8.jpg)
- hadoop文件的上传函数IOUtils.copyBytes(fis,fos,configuration);
- java的文件输入输出流的
注意:导入的包的问题,如果导入的包不对会报错,基本上是hadoop包的导入,但是注意这个包:
import java.net.URI;//导入的是net网络的这个包,而不是其他的包
实现代码:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.junit.Test;
import java.io.*;
import java.net.URI;//导入的是net网络的这个包,而不是其他的包
import java.net.URISyntaxException;
public class TestHadoopIO {
@Test
//hadoop的io流的测试
public void JavaIOtest() throws Exception{
// a.exe复制出了b.exe
// 定义输出流
InputStream is=new FileInputStream("a.exe");
// 定义输入流
File file=new File("b.exe");
if(!file.exists()){
file.createNewFile();//如果文件没有存在就创建一个新的文件
}
// 定义输出流写到指定的文件
OutputStream os=new FileOutputStream(file);
// 定义缓冲区,使用读写更加的便利
byte[] buffer=new byte[1024];
int len=0;
while((len=is.read(buffer))!=-1){
//把is写入的数据写到磁盘中
os.write(buffer,0,len);
}
//同步到磁盘
os.flush();
// 关闭相关的操作
os.close();
is.close();
}
@Test
//获取文件系统
public void hadoopIOtest() throws IOException, URISyntaxException, InterruptedException {
Configuration cfg=new Configuration();
FileSystem fs=FileSystem.get(new URI("hadoop100:9000"),cfg,"dev1");
//将win10的文件上传到hdfs
// 定义输入流
InputStream is=fs.open(new Path("/abc.txt"));
}
// 上传文件到hdfs copyBytes(fis,fos,configuration);
@Test
public void putFileToHDFS() throws IOException, InterruptedException, URISyntaxException {
// 1 获取文件系统
Configuration configuration = new Configuration();
FileSystem fs = FileSystem.get(new URI("hdfs://hadoop100:9000"), configuration, "dev1");
// 2 创建输入流
FileInputStream fis = new FileInputStream(new File("e:/banhua.txt"));
// 3 获取输出流
FSDataOutputStream fos = fs.create(new Path("/banhua.txt"));
IOUtils.copyBytes(fis,fos,configuration);
// 5 关闭资源 先打开的后关闭
IOUtils.closeStream(fos);
IOUtils.closeStream(fis);
fs.close();
}
}
内容总结
以上是互联网集市为您收集整理的Hadoop文件上传和下载函数全部内容,希望文章能够帮你解决Hadoop文件上传和下载函数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。