Program Kotlin pro převod souboru na bajtové pole a naopak

V tomto programu se naučíte převádět objekt File na byte () a naopak v Kotlin.

Než převedeme soubor na bajtové pole a naopak, předpokládáme, že v naší složce src máme soubor s názvem test.txt .

Tady je obsah souboru test.txt

 Toto je testovací soubor.

Příklad 1: Převést soubor na byte ()

 import java.io.IOException import java.nio.file.Files import java.nio.file.Paths import java.util.Arrays fun main(args: Array) ( val path = System.getProperty("user.dir") + "\src\test.txt" try ( val encoded = Files.readAllBytes(Paths.get(path)) println(Arrays.toString(encoded)) ) catch (e: IOException) ( ) )

Když spustíte program, výstup bude:

 (84, 104, 105, 115, 32, 105, 115, 32, 97, 13, 10, 84, 101, 115, 116, 32, 102, 105, 108, 101, 46)

Ve výše uvedeném programu uložíme cestu k souboru do proměnné cesty.

Potom uvnitř bloku try načteme pomocí readAllBytes()metody všechny bajty z dané pth .

Potom použijeme metodu Arrays' toString()k tisku bajtového pole.

Protože, readAllBytes()může hodit IOException, jsme použili try-catchblok v programu.

Příklad 2: Převést byte () na soubor

 import java.io.IOException import java.nio.file.Files import java.nio.file.Paths fun main(args: Array) ( val path = System.getProperty("user.dir") + "\src\test.txt" val finalPath = System.getProperty("user.dir") + "\src\final.txt" try ( val encoded = Files.readAllBytes(Paths.get(path)) Files.write(Paths.get(finalPath), encoded) ) catch (e: IOException) ( ) ) 

Při spuštění programu se obsah souboru test.txt zkopíruje do souboru final.txt .

Ve výše uvedeném programu jsme použili stejnou metodu jako v příkladu 1 ke čtení všech bajtů ze souboru uloženého v cestě. Tyto bajty jsou uloženy v kódovaném poli.

Máme také finalPath, kde se mají zapisovat bajty.

Potom jednoduše použijeme metodu Files' write()k zápisu kódovaného bajtového pole do souboru v dané finalPath.

Tady je ekvivalentní kód Java: Program Java pro převod souboru na byte () a naopak.

Zajímavé články...