AKTUALIZACJA: od tego czasu stworzyłem bardziej efektywne rozwiązanie, nad którym omówiłem tutaj: https://stackoverflow.com/a/34277491/501113
Coraz częściej pracuję nad arkuszem Scala w środowisku Scala IDE dla Eclipse (i uważam, że w IntelliJ IDEA jest coś równoważnego). W każdym razie muszę być w stanie wykonać jedną linijkę, aby wydrukować część zawartości, gdy otrzymuję komunikat „Wyjście przekracza granicę odcięcia”. wiadomość, jeśli robię coś ważnego, szczególnie z kolekcjami Scala.
Wymyśliłem jedną linijkę, którą wstawiam na górze każdego nowego arkusza Scala, aby to uprościć (i dlatego nie muszę wykonywać całego ćwiczenia importowania biblioteki zewnętrznej z bardzo prostej potrzeby). Jeśli jesteś sticklerem i zauważysz, że technicznie jest to dwie linie, to tylko po to, aby uczynić ją bardziej czytelną na tym forum. To jest pojedyncza linia w moim arkuszu Scala.
def printToFile(content: String, location: String = "C:/Users/jtdoe/Desktop/WorkSheet.txt") =
Some(new java.io.PrintWriter(location)).foreach{f => try{f.write(content)}finally{f.close}}
A użycie jest po prostu:
printToFile("A fancy test string\ncontaining newlines\nOMG!\n")
Dzięki temu mogę opcjonalnie podać nazwę pliku, jeśli chcę mieć dodatkowe pliki poza domyślnymi (co całkowicie zastępuje plik za każdym razem, gdy wywoływana jest metoda).
Tak więc drugie użycie to po prostu:
printToFile("A fancy test string\ncontaining newlines\nOMG!\n", "C:/Users/jtdoe/Desktop/WorkSheet.txt")
Cieszyć się!