Java中IO流文件讀取、寫入和復(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怎么寫入文件
package com.yyb.file;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
/*
* 寫入文件:
* 1、找到指定的文件
* 2、根據(jù)文件創(chuàng)建文件的輸出流
* 3、把內(nèi)容轉(zhuǎn)換成字節(jié)數(shù)組
* 4、向文件寫入內(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();
// 向文件寫入內(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)文件寫入一部分內(nèi)容,直到寫完所有內(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)文件寫入一部分內(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流文件讀取、寫入和復(fù)制的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Mybatis執(zhí)行Update返回行數(shù)為負(fù)數(shù)的問題
這篇文章主要介紹了Mybatis執(zhí)行Update返回行數(shù)為負(fù)數(shù)的問題,具有很好的參考價(jià)值,希望大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12
Spring中的Aware接口及應(yīng)用場(chǎng)景詳解
這篇文章主要介紹了Spring中的Aware接口及應(yīng)用場(chǎng)景,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
Java使用線程池實(shí)現(xiàn)socket編程的方法詳解
這篇文章主要為大家詳細(xì)介紹了Java使用線程池實(shí)現(xiàn)socket編程的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03
Java中ExecutorService和ThreadPoolExecutor運(yùn)行原理
本文主要介紹了Java中ExecutorService和ThreadPoolExecutor運(yùn)行原理,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
java常用工具類之?dāng)?shù)據(jù)庫連接類(可以連接多種數(shù)據(jù)庫)
這篇文章主要介紹了java常用工具類之?dāng)?shù)據(jù)庫連接類,可以連接多種數(shù)據(jù)庫,代碼中包含詳細(xì)注釋,需要的朋友可以參考下2014-07-07

