kotlin中的文件和IO流,王者笔记,轻松彻底入门Flutter
在Kotlin中,文件和IO流是非常重要的部分,因为它们允许我们读取、写入和处理数据。Kotlin通过标准库提供了对文件IO操作的支持。
- 文件的创建、删除和读取
import java.io.File
fun main() {
val file = File("test.txt")
// 创建文件
file.createNewFile()
// 写入内容
val writer = file.printWriter()
writer.println("Hello, World!")
writer.close()
// 读取内容
val content = file.readText()
println(content)
// 删除文件
file.delete()
}
- 文件夹的创建、删除和遍历
import java.io.File
fun main() {
val directory = File("test_dir")
// 创建目录
directory.mkdir()
// 创建文件
val file = File(directory, "test.txt")
file.createNewFile()
// 遍历目录
directory.listFiles().forEach {
println(it.name)
}
// 删除文件和目录
file.delete()
directory.delete()
}
- 使用Sequence进行文件行的迭代
import java.io.File
fun main() {
val file = File("test.txt")
file.printWriter().use {
it.println("Hello, World!")
it.println("Hello, Kotlin!")
}
val lines = file.lineSequence()
lines.forEach {
println(it)
}
}
- 使用BufferedReader进行文件的逐行读取
import java.io.BufferedReader
import java.io.FileReader
fun main() {
val file = File("test.txt")
file.printWriter().use {
it.println("Hello, World!")
it.println("Hello, Kotlin!")
}
val reader = BufferedReader(FileReader(file))
reader.use {
while (true) {
val line = it.readLine() ?: break
println(line)
}
}
}
- 使用RandomAccessFile进行文件的随机访问
import java.io.RandomAccessFile
fun main() {
val file = RandomAccessFile("test.txt", "rw")
file.writeUTF("Hello, World!")
file.writeUTF("Hello, Kotlin!")
file.seek(0)
println(file.readUTF())
println(file.readUTF())
file.close()
}
- 使用DataInputStream和DataOutputStream进行数据的二进制读写
import java.io.DataInputStream
import java.io.DataOutputStream
import java.io.FileInputStream
import java.io.FileOutputStream
fun main() {
val file = File("test.bin")
val dos = DataOutputStream(FileOutputStream(file))
dos.writeInt(42)
dos.writeDouble(3.14)
dos.writeUTF("Hello, World!")
dos.close()
评论已关闭