Java使用字節(jié)流實(shí)現(xiàn)圖片音頻的復(fù)制
Java字節(jié)流復(fù)制圖片音頻
java中的字節(jié)流可以實(shí)現(xiàn)文本的讀入寫(xiě)入,當(dāng)然也可以實(shí)現(xiàn)字節(jié)流對(duì)于圖片的讀入寫(xiě)入,就只需要寫(xiě)一個(gè)復(fù)制文本的字節(jié)輸入輸出流,然后在源文件和目標(biāo)文件更換后綴圖片就行了。
下面給出了source.png圖片的路徑,我們對(duì)其所對(duì)應(yīng)的路徑提供一個(gè)copysource.png的復(fù)制圖片文件。

1.首先找到這兩個(gè)文件的路徑。如果寫(xiě)入的文本沒(méi)有創(chuàng)建的話,會(huì)自動(dòng)創(chuàng)建。
File source = new File("C:\\Users\\Lenovo\\Desktop\\csdn\\iotest\\source.png");
File copysource = new File("C:\\Users\\Lenovo\\Desktop\\csdn\\iotest\\copysource.png");
2.定義字節(jié)輸入流,字節(jié)輸出流
InputStream in = null; OutputStream out = null;
3.通過(guò)字節(jié)輸入流讀入source.png文件的內(nèi)容,在通過(guò)字節(jié)輸出流將其輸入到copysource.png中。
in = new FileInputStream(source);
out =new FileOutputStream(copysource);
byte[] bt = new byte[(int)source.length()];
int length = 0;
while( (length = in.read(bt))!=-1) {
out.write(bt,0,length);
}
4.關(guān)閉流
if(null!=in) {
try {
in.close();
}catch(IOException e) {
}
}
if(null!=out) {
try {
out.close();
}catch(IOException e) {
}
}
}
經(jīng)過(guò)上述的代碼,就可以將source.png的圖片復(fù)制到copysource.png中了。這個(gè)時(shí)候就會(huì)發(fā)現(xiàn)該路徑下多出了一張copysource.png的圖片了。

以下是完整代碼:
import java.io.*;
public class IOTest {
public static void main(String[]args) {
File source = new File("C:\\Users\\Lenovo\\Desktop\\csdn\\iotest\\source.png");
File copysource = new File("C:\\Users\\Lenovo\\Desktop\\csdn\\iotest\\copysource.png");
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream(source);
out =new FileOutputStream(copysource);
byte[] bt = new byte[(int)source.length()];
int length = 0;
while( (length = in.read(bt))!=-1) {
out.write(bt,0,length);
}
}catch(IOException e) {
}finally {
if(null!=in) {
try {
in.close();
}catch(IOException e) {
}
}
if(null!=out) {
try {
out.close();
}catch(IOException e) {
}
}
}
System.out.println("復(fù)制成功");
}
}
和上面復(fù)制圖片的代碼一樣,只需要修改文件路徑,音頻和視頻都是可以復(fù)制的。
下面還是以上述的路徑為例,給出一個(gè)后綴為mp4文件,我們將其通過(guò)代碼復(fù)制一份,由上面的代碼我們只需要修改文件路徑的內(nèi)容。
File source =new File("C:\\Users\\Lenovo\\Desktop\\csdn\\iotest\\林俊杰-修煉愛(ài)情(超清).mp4");
File copysource = new File("C:\\Users\\Lenovo\\Desktop\\csdn\\iotest\\copy修煉愛(ài)情JJ.mp4");
我們發(fā)現(xiàn)可以復(fù)制成功

到此這篇關(guān)于Java使用字節(jié)流實(shí)現(xiàn)圖片音頻的復(fù)制的文章就介紹到這了,更多相關(guān)java字節(jié)流內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
一個(gè)Servlet是如何處理多個(gè)請(qǐng)求的?
以前我一直以為一個(gè)Servlet只能處理一個(gè)請(qǐng)求,后來(lái)發(fā)現(xiàn)是自己太菜了,可以借助攜帶一個(gè)參數(shù)來(lái)完成多個(gè)請(qǐng)求的處理,根據(jù)參數(shù)的不同,在核心的service方法中調(diào)用不同的業(yè)務(wù)方法,來(lái)實(shí)現(xiàn)處理多個(gè)servlet請(qǐng)求的目的,廢話不多說(shuō),直接上代碼,需要的朋友可以參考下2021-06-06
劍指Offer之Java算法習(xí)題精講數(shù)組查找與字符串交集
跟著思路走,之后從簡(jiǎn)單題入手,反復(fù)去看,做過(guò)之后可能會(huì)忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會(huì)發(fā)現(xiàn)質(zhì)的變化2022-03-03
spring security集成cas實(shí)現(xiàn)單點(diǎn)登錄過(guò)程
這篇文章主要介紹了spring security集成cas實(shí)現(xiàn)單點(diǎn)登錄過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
Java中常見(jiàn)的編碼集問(wèn)題總結(jié)
這篇文章主要為大家整理了一些Java中常見(jiàn)的編碼集問(wèn)題,文中的示例代碼講解詳細(xì),對(duì)我們深入理解Java有一定的幫助,感興趣的小伙伴可以了解一下2023-02-02
java獲取文件擴(kuò)展名的方法小結(jié)【正則與字符串截取】
這篇文章主要介紹了java獲取文件擴(kuò)展名的方法,結(jié)合實(shí)例形式分析了使用正則與字符串截取兩種獲取擴(kuò)展名的操作技巧,需要的朋友可以參考下2017-01-01

