了解Java的入境/郊游流
#file #java #input #output

输入/输出流(E/S)是编程的基本方面,允许程序与环境进行交互。条目/输出可以采用多种表格,包括读取和尖叫文件,条目/输出流和部分。在本文中,我们将通过在Java中使用简单示例来说明它们的使用中的每种E/O形式。

档案阅读和写作

读取文件是编程中E/S的常见形式。文件的 play 允许从文件提供程序,而文件的允许 程序将数据存储在文件中

在Java中,将读取文件提供给文件类。 类课程使您可以相信,阅读,尖叫和删除文件。这是Java中croste文件的一个简单示例:

File file = new File("monfichier.txt");
file.createNewFile();

在此示例中,我们相信使用类 createNewfile() monfichier.txt ”文件, file 。此thode在当前的reactory中派生一个新的空文件。

要读取文件的内容,我们可以使用Java的扫描仪类。这是在Java中读取文件的示例:

File file = new File("monfichier.txt");
Scanner scanner = new Scanner(file);

while (scanner.hasNextLine()) {
    String line = scanner.nextLine();
    System.out.println(line);
}

scanner.close();

在此示例中,我们认为使用我们相信的“ monfichier.txt ”的“ 扫描仪” 。然后,我们使用,而循环将文件的每一行读取到扫描仪类的thode nextline()。最后,我们使用 notel()关闭扫描仪对象。

对于,在文件中,我们可以使用类 filewriter 。这是Java中文件中尖叫的示例:

File file = new File("monfichier.txt");
FileWriter writer = new FileWriter(file);

writer.write("Ceci est une ligne de texte");
writer.close();

在此示例中,我们相信一个新对象 filewriter 使用我们相信的“ monfichier.txt ”文件。然后,我们使用 write() class filewriter class 标记文件中的文本行。最后,我们使用thoded 封闭()_

关闭文件作者对象。

nb :对于 ,例如资源 最终确定操作很重要强>和活着仪表泄漏。因此,建议使用thode laste()

输入/输出流

输入/输出流是E/S编程的另一个重要方面。 输入/输出流允许及时阅读和尖叫程序,而无需将数据存储在文件中。

在Java中,入口/输出的流量借助 InputStream OutputStream 类的帮助。这是一个简单的示例,可以在Java中使用这些类:

InputStream input = System.in;
OutputStream output = System.out

在此示例中,我们相信一个对象 inputStream 使用thoded system.in inputstream 用户的标准数据。我们还相信使用thode system.out 的对象 uptumpstream 称为 output ,它允许©cride cride the stranged the stranged und donnets 标准(严格的cran)。

我们可以将这些对象及时在中读取和尖叫。例如,以下是Java程序的示例,该程序要求用户输入其名称并显示一个欢迎消息:

InputStream input = System.in;
OutputStream output = System.out;
Scanner scanner = new Scanner(input);

output.write("Entrez votre nom : ".getBytes());
String nom = scanner.nextLine();

output.write(("Bienvenue, " + nom + "!").getBytes());

scanner.close();

在此示例中,我们使用对象扫描仪 读取使用thode nextline()使用用户的条目。我们还使用类的thode getBytes() string 将我们的字符通道转换为 bytes painte 在使用输出流之前 write() outputStream

塞德斯

seds 是允许的另一种形式的编程形式通过推荐传输,并将其转换为Java对象。

在Java中,半纯度无法帮助序列化界面。为了使Java对象为第二,它必须实现此接口。这是Java中对象的对象的一个​​简单示例:

public class Personne implements Serializable {
    private String nom;
    private int age;

    public Personne(String nom, int age) {
        this.nom = nom;
        this.age = age;
    }

    public String getNom() {
        return nom;
    }

    public int getAge() {
        return age;
    }
}

在此示例中,我们相信一个类 person ,这意味着可序列化的界面。该课程有两个专有:姓名和年龄,以及这些所有权的两个协议。

要遇到一个对象 person ,我们可以使用类 ObjectoutStream 。这是一个简单的例子:

Personne p = new Personne("Alice", 25);
File file = new File("personne.ser");
FileOutputStream fos = new FileOutputStream(file);
ObjectOutputStream oos = new ObjectOutputStream(fos);

oos.writeObject(p);

oos.close();

在此示例中,我们相信一个对象称为 p 。然后,我们越过文件称为“ 人。。然后,我们使用此输出流进行了一个对象 ObjectOutStream

最后,我们使用了类的 writebject() oggineoutStream 来满足文件中的对象 p 。然后,我们使用封闭对象 objetputStream 使用thode 封闭()

一个对象 person ,我们可以使用类 objectInputStream 。这是一个简单的例子:

File file = new File("personne.ser");
FileInputStream fis = new FileInputStream(file);
ObjectInputStream ois = new ObjectInputStream(fis);

Personne p = (Personne) ois.readObject();

ois.close();

在此示例中,我们相信“ 人”的对象文件。然后,我们使用类 fileInputStream 向本文件打开了输入流,然后相信对象 objectInputStream 使用此输入流。

最后,我们使用了文件中包含的对象 objectInputStream 的类 ReadObject() objectInputStream 。然后,我们使用thode noth()

结论

在摘要中,Java中的输入/输出对于文件操作 通信与'用户至关重要。条目/输出流允许读取 在re -el Times中捐赠,而位sits将Java对象转换为二进制重印,用于存储或传输。通过挑选这些概念,Java Veloppers可以更加稳健,更具交互性程序。