字符串插值,转义引号
String interpolation, escaping quotation mark
事实证明这有多困难让我有些困惑。我已经查看过 Whosebug,但似乎没有适合我的解决方案。
我想做的事情:
val file = checkcache(fileName)
file match
{
case Some(_) => {println(s"File $file found!"); file.get}
case None => createFile(fileName)
}
现在,对于一个名为 "blubb" 的文件,它已经存在于它输出的缓存中,这工作得很好
File blubb found
和returns文件。
现在我想要这样
File "blubb" found
所以我尝试这样做:
case Some(_) => { println(s"File \" $file \" found!"); file.get}
编译器抛出
')' expected but string literal found.
这是为什么?如何正确转义双引号并且最好在 $file-variable 之后或之前没有空的 space?
使用三引号:
scala> s"""File "$file" found!"""
res0: String = File "blubb" found!
事实证明这有多困难让我有些困惑。我已经查看过 Whosebug,但似乎没有适合我的解决方案。
我想做的事情:
val file = checkcache(fileName)
file match
{
case Some(_) => {println(s"File $file found!"); file.get}
case None => createFile(fileName)
}
现在,对于一个名为 "blubb" 的文件,它已经存在于它输出的缓存中,这工作得很好
File blubb found
和returns文件。
现在我想要这样
File "blubb" found
所以我尝试这样做:
case Some(_) => { println(s"File \" $file \" found!"); file.get}
编译器抛出
')' expected but string literal found.
这是为什么?如何正确转义双引号并且最好在 $file-variable 之后或之前没有空的 space?
使用三引号:
scala> s"""File "$file" found!"""
res0: String = File "blubb" found!