Scala Spark中的out.println()不是';他不为我工作。一切都在同一条线上
当我将完全相同的代码复制到REPL中时,它会工作,但在spark shell for scala中,它会写入文本文件,但不会在单独的行上Scala Spark中的out.println()不是';他不为我工作。一切都在同一条线上,scala,apache-spark,printwriter,Scala,Apache Spark,Printwriter,当我将完全相同的代码复制到REPL中时,它会工作,但在spark shell for scala中,它会写入文本文件,但不会在单独的行上 val out = new PrintWriter("TestAverages.txt") for(i <- 0 to 10) out.println(i) out.close() val out=new PrintWriter(“TestAverages.txt”) 对于(i我知道这是什么原因,因为您提到了您使用的Windows。的行为:行分隔符字符
val out = new PrintWriter("TestAverages.txt")
for(i <- 0 to 10) out.println(i)
out.close()
val out=new PrintWriter(“TestAverages.txt”)
对于(i我知道这是什么原因,因为您提到了您使用的Windows。的行为:行分隔符字符串由系统属性line.separator
定义,不一定是单个换行符
因此,与其写:
for(i <- 0 to 10) out.println(i)
用于(我觉得它对我有用,你确定你运行的是同一个代码吗?Spark Shell是Scala REPL的包装器。请确保以相同的方式启动此代码way@nicodp是的,它是完全相同的代码,我不明白为什么它不工作。当我在spark shell中打印时,它会在单独的行上打印,但当我打印到txt文件时,它会保持不变同一行。你能粘贴你是如何运行这个代码和输出的吗?导入java.io.PrintWriter val out=new PrintWriter(“hello.txt”)for(我也可以是(0到10)。mkString(\\r\\n”)
对我有效的是没有双\\,只是out.println((0到10)。mkString(\r\n”)
for(i <- 0 to 10) out.print(i + "\r\n")