Java實(shí)現(xiàn)文件讀取和寫入過程解析
需求說明

實(shí)際操作過程中,從D盤根目錄下的ak.txt讀取文件寫入D盤根目錄下的hello.txt文件內(nèi)
實(shí)現(xiàn)思路
寫兩個(gè)方法,一個(gè)用于讀取目標(biāo)文件,一個(gè)用于寫入目標(biāo)文件--詳情見代碼注釋
代碼內(nèi)容
文件讀取和寫入練習(xí)
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) {
//實(shí)例化對(duì)象
Tyy tyy = new Tyy();
//用一個(gè)byte[]接受數(shù)據(jù)
byte[] bytes=tyy.read("d:/ak.txt");
//將接受到的數(shù)據(jù)傳入寫入方法
tyy.write("d:/hello.txt",bytes);
}
//讀取方法,設(shè)定傳參是文件的String路徑,返回一個(gè)byte[]數(shù)組
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("內(nèi)容讀取中...........");
while ((read = fis.read(bytes)) != -1) {
for (int i = 0; i < read; i++) {
System.out.print((char) bytes[i]);
}
System.out.println("\n內(nèi)容讀取完畢");
}
return bytes;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return bytes;
}
//寫入方法,需要兩個(gè)參數(shù),一是寫入路徑,一是寫入內(nèi)容
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();
}
}
}
}
運(yùn)行結(jié)果



以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
分享幾個(gè)Java工作中實(shí)用的代碼優(yōu)化技巧
這篇文章主要給大家分享幾個(gè)Java工作中實(shí)用代碼優(yōu)化技巧,文章基于Java的相關(guān)資料展開對(duì)其優(yōu)化技巧的分享,需要的小伙伴可以參考一下2022-04-04
springboot項(xiàng)目使用Disruptor做內(nèi)部消息隊(duì)列的實(shí)現(xiàn)
本文主要介紹了springboot項(xiàng)目使用Disruptor做內(nèi)部消息隊(duì)列的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
SpringBoot學(xué)習(xí)之全局異常處理設(shè)置(返回JSON)
本篇文章主要介紹了SpringBoot學(xué)習(xí)之全局異常處理設(shè)置(返回JSON),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-02-02
Java ArrayList add(int index, E element)和set(int index, E el
今天小編就為大家分享一篇關(guān)于Java ArrayList add(int index, E element)和set(int index, E element)兩個(gè)方法的說明,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10
Junit單元測(cè)試關(guān)于@Transactional注解引起的事務(wù)回滾問題
這篇文章主要介紹了Junit單元測(cè)試關(guān)于@Transactional注解引起的事務(wù)回滾問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08
Java如何優(yōu)雅的實(shí)現(xiàn)微信登錄注冊(cè)
這篇文章主要給大家介紹了關(guān)于Java如何優(yōu)雅的實(shí)現(xiàn)微信登錄注冊(cè)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-02-02
Java中JWT令牌實(shí)現(xiàn)登錄驗(yàn)證
本文主要介紹了JWT令牌在Java中實(shí)現(xiàn)登錄驗(yàn)證的方法,JWT是一種自我包含的、無狀態(tài)的認(rèn)證機(jī)制,可以用來在客戶端和服務(wù)器之間傳遞安全可靠的信息,感興趣的可以了解一下2024-12-12

