【发布时间】:2011-07-10 18:14:19
【问题描述】:
在 scala 中,当您将字符串“Hello World”写入它写入的文件时
你好世界
(注意:没有双引号)。
Lisp 有一个打印和写入的概念。一个不带双引号写入,另一个包含它们以便于写出数据结构并稍后使用标准阅读器读回它们。
在 Scala 中有没有办法做到这一点?
使用一个字符串很容易格式化它 - 但对于许多深度嵌套的结构,这几乎是不可能的。
比如说我有
sealed trait PathSegment
case class P(x:String) extends PathSegment
case class V(x:Int) extends PathSegment
要创建一个:
P("X")
或
V(0)
这些PathSegments 的列表打印为:
List(P(paths), P(/pets), P(get), P(responses), V(200))
我希望将其打印为:
List(P("paths"), P("/pets"), P("get"), P("responses"), V(200))
换句话说,我希望字符串(和字符)无论出现在结构中的哪个位置都打印为"foo" 或'c'
【问题讨论】:
-
使用三引号怎么样? println("""他说,"Scala 摇滚!"""")
-
如果您误用了答案的命令,您的答案将无法被接受。
标签: string parsing serialization scala