Java Spark RDD读取GBK格式的文件

本文介绍了如何在Java Spark环境中,通过自定义处理方式读取GBK格式的文件。首先,创建SparkConf并设置运行模式,然后创建JavaSparkContext。接着,使用hadoopFile方法读取GBK文件,并指定输入格式。通过mapValues转换每个Text对象为GBK编码的字符串,最后打印输出处理后的文本内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、由于jsc.textFile(path)默认读取UTF-8编码格式的文件,因此读取GBK格式的文件需要做一些特殊的处理。


2、程序如下:

              SparkConf conf = new SparkConf()
        .setMaster("local[*]")//本地运行需要加这句话,若放在集群上注释掉即可
        .setAppName("GBK READ");//这个名字可以随意命名
JavaSparkContext jsc = new JavaSparkContext(conf);
JavaPairRDD<LongWritable,Text> pair = jsc.hadoopFile("d:\\AA.txt", TextInputFormat.class, LongWritable.class, Text.class, 1);//这里的1可以改为线程数,例如如果执行的num-executors为16,则可以改为16
JavaPairRDD<LongWritable, String> mapValues = pair.mapValues(new Function<Text, String>(){
@Override
public String call(Text v1) throws Exception {
return new String(v1.getBytes(),0,v1.getLength(),"GBK");
}
});
mapValues.values().foreach(new VoidFunction<String>() {

@Override
public void call(String t) throws Exception {
System.out.println(t);

}
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值