Scala 字符串插值,转义引号

Scala 字符串插值,转义引号,scala,string-interpolation,Scala,String Interpolation,我有点困惑于这到底有多困难。我已经环顾了stackoverflow,但似乎没有解决方案适合我 我想做的是: val file = checkcache(fileName) file match { case Some(_) => {println(s"File $file found!"); file.get} case None => createFile(fileName) } 现在,对于一个名为“blubb”的文件来说,它工作得非常好,该文件已经驻留在它输出

我有点困惑于这到底有多困难。我已经环顾了stackoverflow,但似乎没有解决方案适合我

我想做的是:

val file = checkcache(fileName)

file match
{
    case Some(_) => {println(s"File $file found!"); file.get}
    case None => createFile(fileName)
}
现在,对于一个名为“blubb”的文件来说,它工作得非常好,该文件已经驻留在它输出的缓存中

找到blubb文件

并返回该文件

现在我希望这是

找到文件“blubb”

所以我试着这样做:

case Some(_) => { println(s"File \" $file \" found!"); file.get}
编译器抛出

应为“)”但找到字符串文字


为什么会这样?我如何正确地转义双引号,最好在$file变量前后没有空格?

使用三引号:

scala> s"""File "$file" found!"""
res0: String = File "blubb" found!
有一个问题和公关,所以可能在我们的一生。