Akka Streams:File Sink 不写入流元素

Akka Streams: File Sink does not write stream elements

我正在编写一个小的 Akka Streams 示例,我想在其中将 List 的元素写入本地 TXT 文件

implicit val ec = context.dispatcher
implicit val actorSystem = context.system
implicit val materializer = ActorMaterializer()

val source = Source(List("a", "b", "c"))
  .map(char => ByteString(s"${char} \n"))

val runnableGraph = source.toMat(FileIO.toPath(Paths.get("~/Downloads/results.txt")))(Keep.right)

runnableGraph.run()

该文件已由我在代码中设置的位置创建。 我没有终止 actor 系统,所以肯定有足够的时间将所有 List 元素写入文件。

但不幸的是,什么也没发生

使用主目录的扩展路径而不是波浪号 (~)。例如:

val runnableGraph =
  source.toMat(
    FileIO.toPath(Paths.get("/home/YourUserName/Downloads/results.txt")))(Keep.right)

runnableGraph.run()