需求说明
实际操作过程中,从D盘根目录下的ak.txt读取文件写入D盘根目录下的hello.txt文件内
实现思路
写两个方法,一个用于读取目标文件,一个用于写入目标文件--详情见代码注释
代码内容
文件读取和写入练习
package com.io;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* @auther::9527
* @Description: 尝试
* @program: shi_yong
* @create: 2019-07-31 17:11
*/
public class Tyy {
public static void main(String[] args) {
//实例化对象
Tyy tyy = new Tyy();
//用一个byte[]接受数据
byte[] bytes=tyy.read("d:/ak.txt");
//将接受到的数据传入写入方法
tyy.write("d:/hello.txt",bytes);
}
//读取方法,设定传参是文件的String路径,返回一个byte[]数组
public byte[] read(String str) {
byte[] bytes = new byte[0];
FileInputStream fis = null;
try {
fis = new FileInputStream(str);
int read;
bytes = new byte[1024000];
System.out.println("内容读取中...........");
while ((read = fis.read(bytes)) != -1) {
for (int i = 0; i < read; i++) {
System.out.print((char) bytes[i]);
}
System.out.println("\n内容读取完毕");
}
return bytes;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return bytes;
}
//写入方法,需要两个参数,一是写入路径,一是写入内容
public void write(String string,byte[] bytes) {
System.out.println("文件写入中-----");
FileOutputStream fos = null;
try {
fos = new FileOutputStream(string);
try {
fos.write(bytes);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("文件写入完毕");
} catch (FileNotFoundException e) {
e.printStackTrace();
}finally {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。