Java 将JSON格式的数据从Flink写入文件
当我们试图使用方法writeAsCsv(path,writemode)将处理后的JSON数据从Flink写入文件时,数据会被写入文件,但我们需要在未发生的每个JSON之后插入逗号。我们使用ApacheKafka作为Flink的数据源Java 将JSON格式的数据从Flink写入文件,java,json,apache-flink,Java,Json,Apache Flink,当我们试图使用方法writeAsCsv(path,writemode)将处理后的JSON数据从Flink写入文件时,数据会被写入文件,但我们需要在未发生的每个JSON之后插入逗号。我们使用ApacheKafka作为Flink的数据源 DataStream<Tuple5<String, String, String, String, String>> messageStream = env.addSource(new FlinkKafkaConsumer08<>
DataStream<Tuple5<String, String, String, String, String>> messageStream = env.addSource(new FlinkKafkaConsumer08<>(FLINK_TOPIC, new SimpleStringSchema(), properties)).flatMap(new StreamToTuple5()).keyBy(0);
String path = "/home/user/Documents/docs/csvfile/";
messageStream.writeAsCsv(path, FileSystem.WriteMode.OVERWRITE);
您可以通过将“
”、“
指定为行分隔符来解决问题:
messageStream.writeAsCsv(path, FileSystem.WriteMode.OVERWRITE, ",", ",")
这里的第三个参数是行分隔符
messageStream.writeAsCsv(path, FileSystem.WriteMode.OVERWRITE, ",", ",")