search
HomeJavajavaTutorialjava IO stream - the use of output stream OutputString()

FileOutPutStream:子类,写出数据的通道

  步骤:

    1.获取目标文件

    2.创建通道(如果原来没有目标文件,则会自动创建一个)

    3.写入数据 write()

    4.释放资源

  注意:

    (1)如果目标文件不存在,那么会自己创建一个目标文件

    (2)如果目标文件存在,先将里面的数据清空,再写入数据

    (3)想在原有的数据上写入数据,则在创建通道的时候使用 构造方法:

       OutPutStream(File file,Boolean append),boolean值为true则可以

    (4)用 write(int a)方法写入数据,虽然接收的是int,但实际上只有一个字节的数据

      (操作的是低八位的,其他的全部丢掉)

//会自动导入一些包
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
//方式一
public static void writeData() throws IOException{
//1.找目标文件
File file = new File("C:\\Users\\bigerf\\Desktop\\文件夹\\writeTest.java");
//2.创建一个通道
FileOutputStream outputStream = new FileOutputStream(file);
//3.开始写入数据,
int a = 10; // int 型 4个字节 
outputStream.write(a); //注意这里每次只能输出一个字节
outputStream.write('b'); // char 类型
outputStream.write(5); 
// 0000-0000 0000-0000 0000-0001 1111-1111 == 511
int b = 511 ; //大于八位(9位)
outputStream.write(b); //实际结果 255,但没有显示
int c = 63; //小于八位(6位)
outputStream.write(c); //乱码
//4.关闭资源
outputStream.close();
}
//方式二
public static void writeData2() throws IOException{
//1.找目标文件
File file = new File("C:\\Users\\bigerf\\Desktop\\文件夹\\writeTest2.java");
//2.创建一个通道,(如果不存在路径中的文件,则会在这一步创建的文件)
//new FileOutputStream(file,true); /true表示在原来文本的基础上写入文本(反之则会先清空再写入)
FileOutputStream outputStream = new FileOutputStream(file,true); 
//3.创键一个字节数组
String str = "hello word";
//将字符串变为字节数组
byte[] b = str.getBytes();
//4.写入数据
outputStream.write(b); //hello word
//5.关闭资源
outputStream.close();
}

陌陌说:

  输入流与输出流可以实现对文件的拷贝,不妨试着实现

  (先将路径文件的数据拷贝写入到字节数组,再从字节数组写出道路径文件)

更多java IO流 之 输出流 OutputString()的使用相关文章请关注PHP中文网!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Top 4 JavaScript Frameworks in 2025: React, Angular, Vue, SvelteTop 4 JavaScript Frameworks in 2025: React, Angular, Vue, SvelteMar 07, 2025 pm 06:09 PM

This article analyzes the top four JavaScript frameworks (React, Angular, Vue, Svelte) in 2025, comparing their performance, scalability, and future prospects. While all remain dominant due to strong communities and ecosystems, their relative popul

How do I implement multi-level caching in Java applications using libraries like Caffeine or Guava Cache?How do I implement multi-level caching in Java applications using libraries like Caffeine or Guava Cache?Mar 17, 2025 pm 05:44 PM

The article discusses implementing multi-level caching in Java using Caffeine and Guava Cache to enhance application performance. It covers setup, integration, and performance benefits, along with configuration and eviction policy management best pra

How does Java's classloading mechanism work, including different classloaders and their delegation models?How does Java's classloading mechanism work, including different classloaders and their delegation models?Mar 17, 2025 pm 05:35 PM

Java's classloading involves loading, linking, and initializing classes using a hierarchical system with Bootstrap, Extension, and Application classloaders. The parent delegation model ensures core classes are loaded first, affecting custom class loa

Node.js 20: Key Performance Boosts and New FeaturesNode.js 20: Key Performance Boosts and New FeaturesMar 07, 2025 pm 06:12 PM

Node.js 20 significantly enhances performance via V8 engine improvements, notably faster garbage collection and I/O. New features include better WebAssembly support and refined debugging tools, boosting developer productivity and application speed.

Iceberg: The Future of Data Lake TablesIceberg: The Future of Data Lake TablesMar 07, 2025 pm 06:31 PM

Iceberg, an open table format for large analytical datasets, improves data lake performance and scalability. It addresses limitations of Parquet/ORC through internal metadata management, enabling efficient schema evolution, time travel, concurrent w

Spring Boot SnakeYAML 2.0 CVE-2022-1471 Issue FixedSpring Boot SnakeYAML 2.0 CVE-2022-1471 Issue FixedMar 07, 2025 pm 05:52 PM

This article addresses the CVE-2022-1471 vulnerability in SnakeYAML, a critical flaw allowing remote code execution. It details how upgrading Spring Boot applications to SnakeYAML 1.33 or later mitigates this risk, emphasizing that dependency updat

How can I implement functional programming techniques in Java?How can I implement functional programming techniques in Java?Mar 11, 2025 pm 05:51 PM

This article explores integrating functional programming into Java using lambda expressions, Streams API, method references, and Optional. It highlights benefits like improved code readability and maintainability through conciseness and immutability

How do I use Maven or Gradle for advanced Java project management, build automation, and dependency resolution?How do I use Maven or Gradle for advanced Java project management, build automation, and dependency resolution?Mar 17, 2025 pm 05:46 PM

The article discusses using Maven and Gradle for Java project management, build automation, and dependency resolution, comparing their approaches and optimization strategies.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!