Escribe para buscar…

File

El sistema de fitxers de l'ordinador ens permet persistir les dades en memòria secundària.

Esta página todavía no se ha traducido — se muestra en su idioma original:Català

Introducció

Entorn de treball

Crea un projecte file amb Amper.

Configura el projecte tal com s’explica a Fonaments.

Write

A continuació treballarem amb el fitxer src/main.kt

Kotlin té la classe kotlin.io.path.Path per representar un fitxer, que equival a la classe java.nio.file.Path.

Aquesta classe proporciona funcionalitat addicional sobre la implementació de Java mitjançant les funcions d’extensió.

El primer que has de fet per escriure un fitxer, és crear l’objecte que representa el “path” del fitxer.

kotlin
import kotlin.io.path.*

fun main() {
    val path = Path("mary.json")
}

writeText()

A continuació pots utilitzar el “path” per escriure el contingut del fitxer:

kotlin
@Serializable
data class Person(val name: String)

fun main() {

    val text = Json.encodeToString(Person("Mary"))

    val path = Path("mary.json")
    path.writeText(text)
}

Missió complerta: tenim el fitxer mary.json amb aquest contingut!

Però aquest mètode sempre funciona?

Si el fitxer té restriccions d’accés o ja s’ha obert en un altre procés no s’escriurà res perquè es produirà una AccessDeniedException per posar un exemple.

On està el fitxer?

En el directori des d’on has executat el codi.

Si és una IDE en el directori arrel del projecte.

I per ser més exactes?

directory

Per guardar les dades és millor crear una carpeta data.

Una “path” pot representar un fitxer o un directori:

kotlin
fun main() {

    val data = Path("data")
    data.createDirectory()
}

Si executo per segon cop aquest codi es produeix una Exception de tipus java.nio.file.FileAlreadyExistsException (el fitxer ja existeix).

Una opció és capturar l’excepció amb unn block “try-catch” i ignorar l’excepció:

kotlin
fun main() {

    try {
        val data = Path("data")
        data.createDirectory()
    } catch (e: java.nio.file.FileAlreadyExistsException) {
        // Ignore
    }
}

Estás leyendo una vista previa.

Inicia sesión para leer el artículo completo. Cualquier cuenta abre 4 artículos gratuitos al mes; el alumnado y el profesorado leen las páginas de su curso sin límite.

Iniciar sesión