Java中IO流文件讀取、寫(xiě)入和復(fù)制的實(shí)例
//構(gòu)造文件File類
File f=new File(fileName);
//判斷是否為目錄
f.isDirectory();
//獲取目錄下的文件名
String[] fileName=f.list();
//獲取目錄下的文件
File[] files=f.listFiles();
1、Java怎么讀取文件
package com.yyb.file;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
/*
* 讀取文件:
* 1、找到指定的文件
* 2、根據(jù)文件創(chuàng)建文件的輸入流
* 3、創(chuàng)建字節(jié)數(shù)組
* 4、讀取內(nèi)容,放到字節(jié)數(shù)組里面
* 5、關(guān)閉輸入流
*/
public class FileRead {
public static void main(String[] args) {
// 構(gòu)建指定文件
File file = new File("E:" + File.separator + "hello.txt");
InputStream in = null;
try {
// 根據(jù)文件創(chuàng)建文件的輸入流
in = new FileInputStream(file);
// 創(chuàng)建字節(jié)數(shù)組
byte[] data = new byte[1024];
// 讀取內(nèi)容,放到字節(jié)數(shù)組里面
in.read(data);
System.out.println(new String(data));
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 關(guān)閉輸入流
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
2、Java怎么寫(xiě)入文件
package com.yyb.file;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
/*
* 寫(xiě)入文件:
* 1、找到指定的文件
* 2、根據(jù)文件創(chuàng)建文件的輸出流
* 3、把內(nèi)容轉(zhuǎn)換成字節(jié)數(shù)組
* 4、向文件寫(xiě)入內(nèi)容
* 5、關(guān)閉輸入流
*/
public class FileWriter {
public static void main(String[] args) {
// 構(gòu)建指定文件
File file = new File("E:" + File.separator + "hello.txt");
OutputStream out = null;
try {
// 根據(jù)文件創(chuàng)建文件的輸出流
out = new FileOutputStream(file);
String message = "我是好人。";
// 把內(nèi)容轉(zhuǎn)換成字節(jié)數(shù)組
byte[] data = message.getBytes();
// 向文件寫(xiě)入內(nèi)容
out.write(data);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 關(guān)閉輸出流
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
3、Java怎么復(fù)制文件
<span style="font-size:18px;">package com.yyb.file;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
/*
* 實(shí)現(xiàn)思路:
* 1、構(gòu)建源文件與目標(biāo)文件
* 2、源文件創(chuàng)建輸入流,目標(biāo)文件創(chuàng)建輸出流
* 3、創(chuàng)建字節(jié)數(shù)組
* 4、使用循環(huán),源文件讀取一部分內(nèi)容,目標(biāo)文件寫(xiě)入一部分內(nèi)容,直到寫(xiě)完所有內(nèi)容
* 5、關(guān)閉源文件輸入流,目標(biāo)文件輸出流
*/
public class FileCopy {
public static void main(String[] args) {
// 構(gòu)建源文件
File file = new File("E:" + File.separator + "HelloWorld.txt");
// 構(gòu)建目標(biāo)文件
File fileCopy = new File("D:" + File.separator + "HelloWorld");
InputStream in = null;
OutputStream out = null;
try {
// 目標(biāo)文件不存在就創(chuàng)建
if (!(fileCopy.exists())) {
fileCopy.createNewFile();
}
// 源文件創(chuàng)建輸入流
in = new FileInputStream(file);
// 目標(biāo)文件創(chuàng)建輸出流
out = new FileOutputStream(fileCopy, true);
// 創(chuàng)建字節(jié)數(shù)組
byte[] temp = new byte[1024];
int length = 0;
// 源文件讀取一部分內(nèi)容
while ((length = in.read(temp)) != -1) {
// 目標(biāo)文件寫(xiě)入一部分內(nèi)容
out.write(temp, 0, length);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 關(guān)閉文件輸入輸出流
in.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}</span><span style="font-size: 24px;">
</span>
以上這篇Java中IO流文件讀取、寫(xiě)入和復(fù)制的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于springboot 配置文件中屬性變量引用方式@@解析
這篇文章主要介紹了關(guān)于springboot 配置文件中屬性變量引用方式@@解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04
SpringBoot?AOP?Redis實(shí)現(xiàn)延時(shí)雙刪功能實(shí)戰(zhàn)
本文主要介紹了SpringBoot?AOP?Redis實(shí)現(xiàn)延時(shí)雙刪功能實(shí)戰(zhàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
JDBC鏈接數(shù)據(jù)庫(kù)的幾個(gè)步驟
這篇文章主要介紹了JDBC鏈接數(shù)據(jù)庫(kù)的幾個(gè)步驟,通過(guò)將數(shù)據(jù)庫(kù)的連接放在一個(gè)工具類里面,達(dá)到重用的效果,需要的朋友可以參考下2015-07-07
Java實(shí)現(xiàn)注冊(cè)郵箱激活賬戶實(shí)例代碼
本篇文章主要介紹了Java實(shí)現(xiàn)郵箱激活賬戶實(shí)例代碼,這里整理了詳細(xì)的代碼,具有一定的參考價(jià)值,有需要的小伙伴可以參考下。2017-07-07
Spring實(shí)戰(zhàn)之XML與JavaConfig的混合配置詳解
大家都知道Spring的顯示配置方式有兩種,一種是基于XML配置,一種是基于JavaConfig的方式配置。那么下這篇文章主要給大家分別介紹如何在JavaConfig中引用XML配置的bean以及如何在XML配置中引用JavaConfig,需要的朋友可以參考下。2017-07-07
BlockingQueue隊(duì)列處理高并發(fā)下的日志
這篇文章主要介紹了BlockingQueue隊(duì)列處理高并發(fā)下的日志示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03
java8列表中通過(guò)stream流根據(jù)對(duì)象屬性去重的三種方式
這篇文章主要介紹了java8列表中通過(guò)stream流根據(jù)對(duì)象屬性去重的三種方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08
Spring中的@ControllerAdvice和@ExceptionHandler注解處理全局異常
這篇文章主要介紹了Spring中的@ControllerAdvice和@ExceptionHandler注解處理全局異常,@ControllerAdvice ,@ControllerAdvice是一個(gè)非常有用的注解,顧名思義,這是一個(gè)增強(qiáng)的 Controller,一般配合@ExceptionHandler使用來(lái)處理全局異常,需要的朋友可以參考下2024-01-01

