Search code examples
scalascala-2.9

Scala: write string to file in one statement


For reading files in Scala, there is

Source.fromFile("file.txt").mkString

Is there an equivalent and concise way to write a string to file?

Most languages support something like that. My favorite is Groovy:

def f = new File("file.txt")
// Read
def s = f.text
// Write
f.text = "file contents"

I'd like to use the code for programs ranging from a single line to a short page of code. Having to use your own library doesn't make sense here. I expect a modern language to let me write something to a file conveniently.

There are posts similar to this, but they don't answer my exact question or are focused on older Scala versions.

For example:


Solution

  • A concise one line:

    import java.io.PrintWriter
    new PrintWriter("filename") { write("file contents"); close }