English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico de Java

Controle de Fluxo Java

Java Matrizes

Java Orientado a Objetos(I)

Java 面向对象(II)

Java 面向对象(III)

Tratamento de Exceções Java

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java程序根据文件内容创建字符串

大全 de exemplos Java

在此程序中,您将学习使用Java从给定文件的内容创建字符串的不同技术。

从文件创建字符串之前,我们假设在src文件夹中有一个名为test.txt的文件。

这是test.txt的内容

Este é um
Teste arquivo.

示例1:从文件创建字符串

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);
    }
}

Quando o programa é executado, a saída é:

[This is a, Test file.]

在上面的程序中,我们使用System的user.dir属性来获取存储在变量中的当前目录path。检查Java程序以获取当前目录以获取更多信息。

我们使用defaultCharset()作为文件的编码。如果您知道编码,请使用它,否则使用默认编码是安全的

然后,我们使用readAllLines()方法从文件中读取所有行。它接受文件的路径及其编码,并以列表的形式返回所有行,如输出所示.

因为readAllLines也可能抛出IOException,所以我们必须这样定义main方法

public static void main(String[] args) throws IOException

示例2:从文件创建字符串

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);
    }
}

Quando o programa é executado, a saída é:

Este é um
Teste arquivo.

No programa acima, o que obtemos não é uma lista de strings, mas uma string que contém todo o conteúdo

Para isso, usamos o método readAllBytes() para ler todos os bytes do caminho fornecido. Em seguida, convertimos esses bytes para uma string usando a codificação padrão

大全 de exemplos Java