#include "../hadoop-0.20.2/src/c++/libhdfs/hdfs.h"
int main(int argc, char ** argv)
{
hdfsFS fs = hdfsConnect("default", 0);
const char* writePath = "/tmp/testfile.txt";
hdfsFile writeFile = hdfsOpenFile(fs, writePath, O_WRONLY | O_CREAT, 0, 0, 0);
if(!writeFile)
{
fprintf(stderr, "Failed to open %s for writing!/n", writePath);
exit(-1);
}
char* buffer = "Hello, World!";
tSize num_written_bytes = hdfsWrite(fs, writeFile, (void*)buffer, strlen(buffer) + 1);
if(hdfsFlush(fs, writeFile))
{
fprintf(stderr, "Failed to 'flush' %s/n", writePath);
exit(-1);
}
hdfsCloseFile(fs, writeFile);
return 0;
}
//这个在0.19.2版本可用(在0.20.2版本不一样):gcc above_sample.c -I${HADOOP_HOME}/src/c++/libhdfs -L${HADOOP_HOME}/libhdfs -lhdfs -o above_sample
/*gcc hadoop_helloworld.c -I /usr/local/share/jdk1.6.0_20/include/ -I /usr/local/share/jdk1.6.0_20/include/linux/ -I /home/stanford/hadoop-0.20.2/src/c++/libhdfs/ -L /home/stanford/hadoop-0.20.2/c++/Linux-i386-32/lib -lhdfs -o hadoop_helloworld -L /usr/local/share/jdk1.6.0_20/jre/lib/i386/client -ljvm*/
/*如缺少哪个共享库,则可应用命令加载:sudo ln ~/hadoop-0.20.2/c++/Linux-i386-32/lib/libhdfs.so.0*/
hadoop的一个hdfs测试程序
最新推荐文章于 2022-12-03 20:16:03 发布