Kotlin 文件讀寫技巧主要包括以下幾個方面:
使用 File
類進行文件操作:
File
類的構造函數創建文件對象。val file = File("path/to/your/file.txt")
exists()
方法檢查文件是否已經存在。if (file.exists()) {
println("File exists")
} else {
println("File does not exist")
}
mkdir()
或 mkdirs()
方法創建目錄。val directory = file.parentFile
if (!directory.exists()) {
directory.mkdirs()
}
使用 FileInputStream
和 FileOutputStream
進行文件讀寫:
FileInputStream
讀取文件內容,并將其轉換為字符串。val content = StringBuilder()
val inputStream = FileInputStream(file)
val buffer = ByteArray(1024)
var length: Int
while (inputStream.read(buffer).also { length = it } > 0) {
content.append(String(buffer, 0, length))
}
inputStream.close()
println(content.toString())
FileOutputStream
將字符串寫入文件。val outputStream = FileOutputStream(file)
outputStream.write("Hello, World!".toByteArray())
outputStream.close()
使用 BufferedWriter
和 BufferedReader
進行文件讀寫:
BufferedWriter
將字符串寫入文件,緩沖可以提高寫入效率。val writer = BufferedWriter(FileWriter(file))
writer.write("Hello, World!")
writer.close()
BufferedReader
從文件中讀取內容,緩沖可以提高讀取效率。val reader = BufferedReader(FileReader(file))
var line: String?
while (reader.readLine().also { line = it } != null) {
println(line)
}
reader.close()
使用 Files
類進行高級文件操作:
Files.copy()
方法復制文件。val sourceFile = File("path/to/source/file.txt")
val destFile = File("path/to/destination/file.txt")
Files.copy(sourceFile.toPath(), destFile.toPath())
Files.move()
方法移動文件。Files.move(sourceFile.toPath(), destFile.toPath())
Files.deleteIfExists()
方法刪除文件(如果存在)。Files.deleteIfExists(file.toPath())
異常處理:
try-catch
塊來捕獲并處理可能的 IOException
。try {
// 文件操作代碼
} catch (e: IOException) {
e.printStackTrace()
} finally {
// 確保資源被正確關閉,如使用 try-with-resources 語句
}
掌握這些技巧后,你可以在 Kotlin 中高效地進行文件讀寫操作。