Kotlin 程序:向现有文件追加文本
在我们向现有文件添加文本之前,我们假设我们有一个名为test.txt的文件在我们的src文件夹中。
这是test.txt的内容
这是一个
测试文件。
示例1:向现有文件添加文本
import java.io.IOException
import java.nio.file.Files
import java.nio.file.Paths
import java.nio.file.StandardOpenOption
fun main(args: Array<String>) {
val path = System.getProperty("user.dir") + "\\src\\test.txt"
val text = "添加的文本"
try {
Files.write(Paths.get(path), text.toByteArray(), StandardOpenOption.APPEND)
} catch (e: IOException) {
}
}
当您运行该程序时,test.txt文件现在包含:
这是一个
测试文件。添加的文本
在上面的程序中,我们使用System
的user.dir
属性来获取存储在变量path
中的当前目录。查看Kotlin程序获取当前目录以获取更多信息。
同样,要添加的文本存储在变量text
中。然后,在try-catch
块内,我们使用Files
的write()
方法将文本附加到现有文件。
write()
方法接受给定文件的路径,要写入的文本以及文件应如何打开以进行写入。在我们的情况下,我们使用了APPEND
选项进行写入。
由于write()
方法可能会返回IOException
,因此我们使用try-catch
块来正确捕获异常。
示例2:使用FileWriter向现有文件添加文本
import java.io.FileWriter
import java.io.IOException
fun main(args: Array<String>) {
val path = System.getProperty("user.dir") + "\\src\\test.txt"
val text = "添加的文本"
try {
val fw = FileWriter(path, true)
fw.write(text)
fw.close()
} catch (e: IOException) {
}
}
程序的输出与示例1相同。
在上面的程序中,我们不是使用write()
方法,而是使用FileWriter
的实例(对象)来向现有文件添加文本。
创建FileWriter
对象时,我们将文件的路径和true
作为第二个参数传递。true
表示我们允许文件进行附加。
然后,我们使用write()
方法附加给定的text
并关闭文件写入器。
以下是等效的Java代码:Java程序向现有文件添加文本。