English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Java полная коллекция примеров
В этой программе вы узнаете о различных методах создания строк из содержимого файла с помощью Java.
Прежде чем создавать строку из файла, мы предполагаем, что вsrcВ папке есть файл с именемtest.txtфайл.
Этоtest.txtсодержание
Это Test файл.
import java.io.IOException; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; public class FileString { public static void main(String[] args) throws IOException { String path = System.getProperty("user.dir") + "\\src\\test.txt"; Charset encoding = Charset.defaultCharset(); List<String> lines = Files.readAllLines(Paths.get(path), encoding); System.out.println(lines); } }
При выполнении этой программы вывод будет следующим:
[Это тестовый файл.]
В вышеуказанном примере программы мы используем атрибут user.dir системы System для получения текущего каталога, сохраненного в переменной path. ПроверьтеJava-программа для получения текущего каталога с помощьюБолее подробная информация.
Мы используем defaultCharset() в качестве кодировки файла. Если вы знаете кодировку, пожалуйста, используйте её, в противном случае использование по умолчанию безопасно
Затем мы используем метод readAllLines() для чтения всех строк из файла. Он принимает путь к файлу и его кодировку, и возвращает все строки в виде списка, как показано в выводе.
Поскольку readAllLines также может выбрасывать IOException, поэтому我们必须如此定义 метод main
public static void main(String[] args) throws IOException
import java.io.IOException; import java.nio.charset.Charset; import java.nio.file.Files; import java.nio.file.Paths; public class FileString { public static void main(String[] args) throws IOException { String path = System.getProperty("user.dir") + "\\src\\test.txt"; Charset encoding = Charset.defaultCharset(); byte[] encoded = Files.readAllBytes(Paths.get(path)); String lines = new String(encoded, encoding); System.out.println(lines); } }
При выполнении этой программы вывод будет следующим:
Это Test файл.
В上面的 программе мы получаем не список строк, а строку, содержащую все содержимое
Для этого мы используем метод readAllBytes() для чтения всех байтов из заданного пути. Затем мы используем缺省 кодировку для преобразования этих байтов в строку