Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将JSON格式的数据从Flink写入文件_Java_Json_Apache Flink - Fatal编程技术网

Java 将JSON格式的数据从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<>

当我们试图使用方法writeAsCsv(path,writemode)将处理后的JSON数据从Flink写入文件时,数据会被写入文件,但我们需要在未发生的每个JSON之后插入逗号。我们使用ApacheKafka作为Flink的数据源

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, ",", ",")