将文件写入hdfs样例代码
时间: 2023-06-01 13:07:40 浏览: 122
我可以回答这个问题。以下是一个将文件写入HDFS的样例代码:
```java
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
public class HdfsWriter {
public static void main(String[] args) throws IOException {
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://localhost:9000"); // 设置HDFS文件系统的URI
// 创建Hadoop文件系统对象
FileSystem fs = FileSystem.get(URI.create("hdfs://localhost:9000"), conf);
// HDFS输出路径
String outputPath = "/user/hadoop/output.txt";
// 检查文件是否存在,如果存在则删除
Path output = new Path(outputPath);
if (fs.exists(output)) {
fs.delete(output, true);
}
// 写入数据到HDFS
InputStream in = HdfsWriter.class.getResourceAsStream("/input.txt");
fs.create(output).write(in.readAllBytes());
// 关闭文件系统对象
fs.close();
in.close();
}
}
```
这个代码会将本地`/input.txt`文件中的内容写入到HDFS的`/user/hadoop/output.txt`文件中。当然,这需要HDFS已经安装并在本地运行了。
阅读全文