В тази програма ще научите различни техники за създаване на низ от съдържания на даден файл в Kotlin.
Преди да създадем низ от файл, предполагаме, че имаме файл с име test.txt в нашата папка src .
Ето съдържанието на test.txt
Това е тестов файл.
Пример 1: Създаване на низ от файл
import java.nio.charset.Charset import java.nio.file.Files import java.nio.file.Paths fun main(args: Array) ( val path = System.getProperty("user.dir") + "\src\test.txt" val encoding = Charset.defaultCharset(); val lines = Files.readAllLines(Paths.get(path), encoding) println(lines) )
Когато стартирате програмата, изходът ще бъде:
(Това е тестов файл.)
В по-горе програма, ние използваме System
е user.dir
собственост, за да получите текущата директория се съхранява в променлива път. Проверете Kotlin Program, за да получите текущата директория за повече информация.
Използвахме defaultCharset()
за кодирането на файла. Ако знаете кодирането, използвайте го, иначе е безопасно да използвате кодиране по подразбиране.
След това използвахме readAllLines()
метод за четене на всички редове от файла. Той поема към файла и неговото кодиране и връща всички редове като списък, както е показано в изхода.
Тъй като readAllLines може да хвърли и IOException, трябва да дефинираме основния си метод като такъв
public static void main (String () args) изхвърля IOException
Пример 2: Създайте низ от файл
import java.nio.charset.Charset import java.nio.file.Files import java.nio.file.Paths fun main(args: Array) ( val path = System.getProperty("user.dir") + "\src\test.txt" val encoding = Charset.defaultCharset() val encoded = Files.readAllBytes(Paths.get(path)) val lines = String(encoded, encoding) println(lines) )
Когато стартирате програмата, изходът ще бъде:
Това е тестов файл.
В горната програма, вместо да получим списък с низове, получаваме един низ, редове, с цялото съдържание.
За това използвахме readAllBytes()
метод за четене на всички байтове от дадения път. След това тези байтове се преобразуват в низ, като се използва кодирането по подразбиране.
Ето еквивалентния Java код: Java програма за създаване на низ от съдържанието на файл.