You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Scala中如何将HashSet保存到txt、csv等纯文本文件中

Scala中将Java HashSet保存为纯文本文件的解决方案

1. 保存为TXT格式(每行一个元素)

无需引入第三方依赖,直接用JDK和Scala标准库即可实现:

import java.io.PrintWriter
import java.util.HashSet

// 你原有定义的HashSet
val slotidSet: HashSet[String] = new HashSet[String](1)
slotidSet.add("100")
slotidSet.add("105")
slotidSet.add("102")
slotidSet.add("103")

// 写入文件逻辑
val printWriter = new PrintWriter("slot_output.txt")
try {
  // Java集合转Scala集合,2.12及更早版本Scala替换为 import scala.collection.JavaConverters._
  import scala.jdk.CollectionConverters._
  slotidSet.asScala.foreach(printWriter.println)
} finally {
  // 确保流关闭,避免资源泄露
  printWriter.close()
}

运行后生成的slot_output.txt每行对应HashSet中的一个元素。

2. 保存为CSV格式

如果只有单类ID字段,CSV格式和TXT写法基本一致,如需添加表头可参考以下代码:

import java.io.PrintWriter
import java.util.HashSet

val slotidSet: HashSet[String] = new HashSet[String](1)
slotidSet.add("100")
slotidSet.add("105")
slotidSet.add("102")
slotidSet.add("103")

val printWriter = new PrintWriter("slot_output.csv")
try {
  // 写入CSV表头(可选,按需调整)
  printWriter.println("slot_id")
  import scala.jdk.CollectionConverters._
  slotidSet.asScala.foreach(printWriter.println)
} finally {
  printWriter.close()
}

注意:如果HashSet元素包含逗号、双引号等CSV特殊字符,写入前需要做转义:将元素用双引号包裹,元素内的双引号替换为两个连续双引号即可。

内容的提问来源于stack exchange,提问作者Bowen Peng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 05:00:04