gpt4 book ai didi

java - 将数据集的内容写入 JSON 字符串

转载 作者:行者123 更新时间:2023-11-30 09:59:13 25 4
gpt4 key购买 nike

我们可以写一个dataset的内容放入 Json 文件中:

DataSet<...> dataset = ...
dataset.write().json("myFile");

假设数据集足够小,有没有办法将内容直接写入String , 一个 Stream或任何类型的 OutputStream

可以将数据集写入临时文件夹,然后再次读取数据:

Path tempDir = Files.createTempDirectory("tempfiles");
String tempFile = tempDir.toString() + "/json";
dataset.coalesce(1).write().json(tempFile);
Path jsonFile = Files.find(Paths.get(tempFile), 1, (path, basicFileAttributes) -> {
return Files.isRegularFile(path) && path.toString().endsWith("json");
}).findFirst().get();
BufferedReader reader = Files.newBufferedReader(jsonFile);
reader.lines().forEach(System.out::println);

但是有没有更好的方法可以在不使用中间文件的间接寻址的情况下获得相同的结果?

最佳答案

您只需映射数据即可将 Dataset[A] 转换为 Dataset[String]。

您的函数会将 A 转换为其 Json 表示形式(例如,作为 String)。

您可以使用 Jackson 来实现这一点,因为它包含在 Spark 依赖项中。

关于java - 将数据集的内容写入 JSON 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59095845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com