Kotlin 写入文件教程展示了如何在 Kotlin 中写入文件。
Kotlin 是一种在 Java 虚拟机上运行的静态类型的编程语言。
本教程提供了四个示例,这些示例可以写入 Kotlin 中的文件。
Kotlin 使用PrintWriter
写入文件
PrintWriter
将格式化的对象表示形式打印到文本输出流。
writefile.kt
package com.zetcode
import java.io.File
fun main(args: Array<String>) {
val fileName = "src/resources/myfile.txt"
val myfile = File(fileName)
myfile.printWriter().use { out ->
out.println("First line")
out.println("Second line")
}
println("Writed to file")
}
该示例使用PrintWriter
将两行写入文件。
val fileName = "src/resources/myfile.txt"
我们写入src/resources/myfile.txt
文件。
myfile.printWriter().use { out ->
printWriter()
返回用于将内容写入文件的PrintWriter
。 use()
方法在文件上执行给定的块功能,然后将其关闭。
out.println("First line")
out.println("Second line")
使用println()
,我们向文件写入一个字符串,其中包括一个换行符。
Kotlin 使用BufferedWriter
写入文件
BufferedWriter
将文本写入字符输出流,缓冲字符以更有效地写入单个字符,数组和字符串。
writefile2.kt
package com.zetcode
import java.io.File
fun main(args: Array<String>) {
val fileName = "src/resources/myfile.txt"
val myfile = File(fileName)
myfile.bufferedWriter().use { out ->
out.write("First line\n")
out.write("Second line\n")
}
println("Writed to file")
}
该示例使用BufferedWriter
将两行写入文件。
myfile.bufferedWriter().use { out ->
bufferedWriter()
返回用于将内容写入文件的BufferedWriter
。 use()
方法在文件上执行给定的块功能,然后将其关闭。
Kotlin 使用writeText
写入文件
writeText()
是 Kotlin File
扩展功能,可将使用 UTF-8 或其他字符集编码的文本写入文件。 如果该文件存在,它将被覆盖。
writefile3.kt
package com.zetcode
import java.io.File
fun main(args: Array<String>) {
val fileName = "src/resources/myfile3.txt"
val myfile = File(fileName)
val content = "Today snow is falling."
myfile.writeText(content)
println("Writed to file")
}
该示例写入具有 Kotlin writeText()
扩展功能的文件。
Kotlin 使用writeText
写入文件
Files.write()
将字节写入文件。
writefile4.kt
package com.zetcode
import java.io.File
import java.nio.file.Files
import java.nio.file.StandardOpenOption
fun main(args: Array<String>) {
val fileName = "src/resources/myfile.txt"
val myfile = File(fileName)
val content = "Today snow is falling.\n"
Files.write(myfile.toPath(), content.toByteArray(), StandardOpenOption.APPEND)
}
该示例写入具有 Kotlin Files.write()
扩展功能的文件。
Files.write(myfile.toPath(), content.toByteArray(), StandardOpenOption.APPEND)
Files.write()
的第一个参数是文件的Path
,第二个是要写入的字节数组,第三个参数是指定如何打开文件的选项。