字符输出流

简介: 字符输出流

字符输出流(Character Output Stream)是用于将字符数据写入到目标输出源(如文件、网络连接等)的流对象。在 Java 中,主要使用 java.io.Writer 及其子类来实现字符输出流的操作。

write() 方法是字符输出流中用于写入字符数据的核心方法。它有多个重载形式,可以接受不同类型的参数进行写入操作。

写入单个字符

import java.io.FileWriter;
import java.io.IOException;
try (FileWriter writer = new FileWriter("output.txt")) {
    char ch = 'A';
    writer.write(ch);
} catch (IOException e) {
    e.printStackTrace();
}

写入字符数组

import java.io.FileWriter;
import java.io.IOException;
try (FileWriter writer = new FileWriter("output.txt")) {
    char[] chars = {'H', 'e', 'l', 'l', 'o'};
    writer.write(chars);
} catch (IOException e) {
    e.printStackTrace();
}

写入指定范围的字符数组

import java.io.FileWriter;
import java.io.IOException;
try (FileWriter writer = new FileWriter("output.txt")) {
    char[] chars = {'H', 'e', 'l', 'l', 'o'};
    int offset = 1;  // 起始位置
    int length = 3;  // 写入长度
    writer.write(chars, offset, length);  // 写入 "ell"
} catch (IOException e) {
    e.printStackTrace();
}

写入字符串

import java.io.FileWriter;
import java.io.IOException;
try (FileWriter writer = new FileWriter("output.txt")) {
    String str = "Hello, World!";
    writer.write(str);
} catch (IOException e) {
    e.printStackTrace();
}

 

在使用 write() 方法时,需要注意以下几点:

  • write() 方法是按字符写入的,即使传入的参数是字节数组或字符串,也会将其按字符处理。
  • write() 方法会阻塞直到数据被实际写入到输出源中,因此需要进行适当的异常处理。
  • 在使用字符输出流时,要记得关闭流资源,可以使用 try-with-resources 语句来自动关闭流。

 


相关文章
|
1天前
将字符串写入文件
将字符串写入文件。
11 5
|
4月前
|
Java C++ Python
使用getline()从文件中读取一行字符串
C++ 中的 `getline()` 函数用于从文件流中读取整行文本。它可以从 `fstream` 和 `ifstream` 对象中调用。有两种语法形式:一种读取到 `\n` 或达到指定缓冲区大小,另一种允许指定自定义分隔符。如果文件流中的字符数量超过缓冲区大小,可能导致读取失败。示例代码展示了如何使用 `getline()` 读取单行和多行文本。
|
6月前
|
Java C++ Python
C++ 使用getline()从文件中读取一行字符串
`getline()` 是 C++ 中 `istream` 类的一个方法,被 `fstream` 和 `ifstream` 继承,用于从文件中读取一行字符串。它有两种语法:一种是从文件读取 `bufSize-1` 个字符到 `buf` 直到 `\n`,另一种是读到指定分隔符 `delim`。如果文件中的字符数量超过 `bufSize`,会导致读取失败。示例代码展示了如何使用 `getline()` 读取和打印文件内容。通过循环调用 `getline()`,可以连续读取文件的多行数据。
110 0
|
6月前
|
C语言
向文件读写字符
向文件读写字符
33 1
|
Java C++ Python
C++ 使用getline():从文件中读取一行字符串
getline() 方法从 cin 输入流缓冲区中读取一行字符串。在此基础上,getline() 方法还适用于读取指定文件中的一行数据,本节就给大家做详细的讲解。 我们知道,getline() 方法定义在 istream 类中,而 fstream 和 ifstream 类继承自 istream 类,因此 fstream 和 ifstream 的类对象可以调用 getline() 成员方法。 当文件流对象调用 getline() 方法时,该方法的功能就变成了从指定文件中读取一行字符串。该方法有以下 2 种语法格式: istream & getline(char* buf, int bufS
233 0
|
存储 Java
字节缓冲流
字节缓冲流
|
6月前
|
移动开发 Java Linux
IO流:字节输出流FileOutputStream的超详细用法
IO流:字节输出流FileOutputStream的超详细用法
|
存储 安全 C语言
C++输入和输出流1
C++输入和输出流1
46 0