Python 官方文档:入门教程 => 点击学习
目录通过OutputStream写入文件与文件复制1.知识点2.写入文件示例3.文件复制示例java写入文件问题(FileOutputStream的使用)总结通过OutputStre
1,首先不管是InputStream读read,还是OutputStream写write,都支持读写一定长度的byte[]。
2,当然,还支持一个字节一个字节的读写,那么一个字节一个字节的读写,读出来的字节和写入的字节都是用的int类型的参数。
3,int参数只会使用它的8个二进制位,也就是说类似于将int强行转换为byte,我感觉很无聊的设计,还不如直接用byte作为参数,这样搞是因为int太火吗?
4,所以所谓的复制,就是把所有的字节读出来,然后写入文件即可。
写入对象FILE_FOR_WRITE中
//工具类
package com.maoge.stream;
import java.io.File;
public class StreamUtils {
//用于定义每次读取的长度
public static final int BUFFER_LENGTH=512;
//文件对象
public static File FILE_FOR_READ;
public static File FILE_FOR_WRITE;
static{
FILE_FOR_READ=new File("C:\\test.txt");
FILE_FOR_WRITE=new File("C:\\result.txt");
}
}
写入过程
package com.maoge.stream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
public class OutputStreamDemo {
public static void main(String[] args){
writeToFile();
}
public static void writeToFile(){
byte buffer[]=buffer=new String("hello world!").getBytes();
OutputStream out=null;
try {
out = new FileOutputStream(StreamUtils.FILE_FOR_WRITE);
out.write(buffer, 0, buffer.length);
} catch (Exception ex) {
System.out.println(ex.toString());
}finally{
try {
out.close();
} catch (IOException ioEx) {
System.out.println(ioEx.toString());
}
}
}
}
直接演示复制图片,因为图片也是二进制位组成的
源文件test.jpg这个需要找个图片,目的文件result.jpg这个是复制后生产的
//工具类
package com.maoge.stream;
import java.io.File;
public class StreamUtils {
//用于定义每次读取的长度
public static final int BUFFER_LENGTH=512;
//文件对象
public static File FILE_FOR_READ;
public static File FILE_FOR_WRITE;
static{
FILE_FOR_READ=new File("C:\\test.jpg");
FILE_FOR_WRITE=new File("C:\\result.jpg");
}
}
复制过程,该方法是OutputStreamDemo类的静态方法。
public static void fileCopy(){
FileInputStream in=null;
FileOutputStream out=null;
try {
in=new FileInputStream(StreamUtils.FILE_FOR_READ);
out=new FileOutputStream(StreamUtils.FILE_FOR_WRITE);
int c;
while((c=in.read())!=-1)
out.write(c);
} catch (Exception ex) {
System.out.println(ex.toString());
}finally{
try {
in.close();
} catch (IOException ioEx) {
System.out.println(ioEx.toString());
}
try {
out.close();
} catch (IOException ioEx) {
System.out.println(ioEx.toString());
}
}
}
实现在控制台写入相关文字,并添加到指定的文件中,并实现读取文件内容
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
public class Fileout {
Scanner inScanner = new Scanner(System.in);
public void f(String address) throws IOException
{
FileOutputStream out=new FileOutputStream(address, true);
String buf;
System.out.println("请输入");
buf= inScanner.nextLine();
byte buy[]=buf.getBytes();
out.write(buy);
FileInputStream fin=new FileInputStream(address);
byte[] bs=new byte[1024];
int count=0;
while((count=fin.read(bs))>0)
{
String str=new String(bs,0,count); //反复定义新变量:每一次都 重新定义新变量,接收新读取的数据
System.out.println(str); //反复输出新变量:每一次都 输出重新定义的新变量
}
fin.close();
}
public static void main(String[] args) throws IOException {
Fileout out=new Fileout();
out.f("f://student.txt");
}
}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
--结束END--
本文标题: Java之通过OutputStream写入文件与文件复制问题
本文链接: https://www.lsjlt.com/news/208636.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
一口价域名售卖能注册吗?域名是网站的标识,简短且易于记忆,为在线用户提供了访问我们网站的简单路径。一口价是在域名交易中一种常见的模式,而这种通常是针对已经被注册的域名转售给其他人的一种方式。
一口价域名买卖的过程通常包括以下几个步骤:
1.寻找:买家需要在域名售卖平台上找到心仪的一口价域名。平台通常会为每个可售的域名提供详细的描述,包括价格、年龄、流
443px" 443px) https://www.west.cn/docs/wp-content/uploads/2024/04/SEO图片294.jpg https://www.west.cn/docs/wp-content/uploads/2024/04/SEO图片294-768x413.jpg 域名售卖 域名一口价售卖 游戏音频 赋值/切片 框架优势 评估指南 项目规模
0