java文本復(fù)制的代碼,java文本復(fù)制的代碼是什么

java將兩個文本文件的內(nèi)容復(fù)制到另一個文件中

主要是用到j(luò)ava里面的i/o流。代碼例子如下:

成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、愛民網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、愛民網(wǎng)絡(luò)營銷、愛民企業(yè)策劃、愛民品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供愛民建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:muchs.cn

import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader; /** * java讀寫文件,復(fù)制文件 * 讀取d:/1.txt文件內(nèi)容,寫入f:/text.txt文件中. * @author young * */public class FileWriterTest { // 讀寫文件 public static void rwFile(){ FileWriter fw = null; BufferedReader br = null; try { fw = new FileWriter("f:\\text.txt", true); br = new BufferedReader(new InputStreamReader( new FileInputStream("d:\\1.txt"), "UTF-8")); String line = null; while ((line = br.readLine()) != null) { System.out.println("文件內(nèi)容: " + line); fw.write(line); fw.flush(); } br.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (fw != null) { try { fw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } public static void main(String[] args) { rwFile(); }}

首先在D盤新建文件1.txt,輸入任意內(nèi)容。然后執(zhí)行java代碼即可。

Java 里用什么代碼可以把一個 String 的內(nèi)容復(fù)制到 Windows 剪切板?

java 中的剪切板

通過操作系統(tǒng)的剪切板,可以實(shí)現(xiàn)在不同的程序中拷貝和粘貼數(shù)據(jù)。一些用Java寫的程序例如很多開發(fā)環(huán)境也可以訪問到剪切板,本文就是研究如何在Java程序中讀寫系統(tǒng)剪切板的數(shù)據(jù)。

Java中使用java.awt.datatransfer.Clipboard類來描述剪切板,并把剪切板分為兩種類型:本地和系統(tǒng),本地剪切板使用 Clipborad cp = new Clipboard("clip1"); 來構(gòu)造;系統(tǒng)剪切板通過

Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();

獲取,下面我們給出幾個常用的方法用于讀寫剪切板中的文本數(shù)據(jù)以及圖像數(shù)據(jù)

1. 從指定的剪切板中獲取文本內(nèi)容

protected static String getClipboardText(Clipboard clip) throws Exception{

// 獲取剪切板中的內(nèi)容

Transferable clipT = clip.getContents(null);

if (clipT != null) {

// 檢查內(nèi)容是否是文本類型

if (clipT.isDataFlavorSupported(DataFlavor.stringFlavor))

return (String)clipT.getTransferData(DataFlavor.stringFlavor);

}

return null;

}

2. 往剪切板寫文本數(shù)據(jù)

protected static void setClipboardText(Clipboard clip, String writeMe) {

Transferable tText = new StringSelection(writeMe);

clip.setContents(tText, null);

}

3. 從剪切板讀取圖像

public static Image getImageFromClipboard() throws Exception{

Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();

Transferable cc = sysc.getContents(null);

if (cc == null)

return null;

else if(cc.isDataFlavorSupported(DataFlavor.imageFlavor))

return (Image)cc.getTransferData(DataFlavor.imageFlavor);

return null;

}

4. 寫圖像到剪切板

protected static void setClipboardImage2(final Image image) {

Transferable trans = new Transferable(){

public DataFlavor[] getTransferDataFlavors() {

return new DataFlavor[] { DataFlavor.imageFlavor };

}

public boolean isDataFlavorSupported(DataFlavor flavor) {

return DataFlavor.imageFlavor.equals(flavor);

}

public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException {

if(isDataFlavorSupported(flavor))

return image;

throw new UnsupportedFlavorException(flavor);

}

};

Toolkit.getDefaultToolkit().getSystemClipboard().setContents(trans, null);

}

有了這四個方法,你下面可以自己寫一些程序來進(jìn)行測試,利用它來實(shí)現(xiàn)與其他程序結(jié)合測試對剪切板數(shù)據(jù)的操作。這里給出一個用于顯示圖像的類,只要把Image實(shí)例作為參數(shù)傳入即可。

/*

* Created on 2004-12-23

* 查看圖形的窗口

*/

package javayou.clipboard;

import java.awt.Frame;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.MediaTracker;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

/**

* @author Winter Lau 用于顯示圖形的窗口

*/

public class ImageViewer extends Frame {

private Image image;

/**

* 顯示一個圖像

* @param viewMe

*/

public ImageViewer(Image viewMe) {

image = viewMe;

MediaTracker mediaTracker = new MediaTracker(this);

mediaTracker.addImage(image, 0);

try {

mediaTracker.waitForID(0);

} catch (InterruptedException ie) {

ie.printStackTrace();

System.exit(1);

}

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0);

}

});

//窗口適應(yīng)圖像大小

setSize(image.getWidth(null), image.getHeight(null));

//窗口標(biāo)題

setTitle("Viewing Image from Clipboard");

setVisible(true);

}

public void paint(Graphics graphics) {

graphics.drawImage(image, 0, 0, null);

}

/**

* 用于讀取圖像文件并生成Image對象

*/

public static Image getImageFromFile(String fileName) {

Toolkit toolkit = Toolkit.getDefaultToolkit();

Image image = toolkit.getImage(fileName);

return image;

}

}

java文件復(fù)制粘貼

復(fù)制粘貼實(shí)際上是文件的流讀取和寫入可以通過如下方法實(shí)現(xiàn):

讀寫是兩個不同的分支,通常都是分開單獨(dú)使用的。

可以通過BufferedReader 流的形式進(jìn)行流緩存,之后通過readLine方法獲取到緩存的內(nèi)容。

BufferedReader bre = null;

try {

String file = "D:/test/test.txt";

bre = new BufferedReader(new FileReader(file));//此時獲取到的bre就是整個文件的緩存流

while ((str = bre.readLine())!= null) // 判斷最后一行不存在,為空結(jié)束循環(huán)

{

System.out.println(str);//原樣輸出讀到的內(nèi)容

};

備注: 流用完之后必須close掉,如上面的就應(yīng)該是:bre.close(),否則bre流會一直存在,直到程序運(yùn)行結(jié)束。

可以通過“FileOutputStream”創(chuàng)建文件實(shí)例,之后過“OutputStreamWriter”流的形式進(jìn)行存儲,舉例:

OutputStreamWriter pw = null;//定義一個流

pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//確認(rèn)流的輸出文件和編碼格式,此過程創(chuàng)建了“test.txt”實(shí)例

pw.write("我是要寫入到記事本文件的內(nèi)容");//將要寫入文件的內(nèi)容,可以多次write

pw.close();//關(guān)閉流

備注:文件流用完之后必須及時通過close方法關(guān)閉,否則會一直處于打開狀態(tài),直至程序停止,增加系統(tǒng)負(fù)擔(dān)。

Java 將一個文件復(fù)制到另一處

test.copy("G:\\G盤寄存資料\\我的文檔1\\音樂課堂.doc","G:\\G盤寄存資料");

請注意上面的有個文件夾名字叫“G盤寄存資料”,你復(fù)制的文件后的新文件名也叫“G盤寄存資料”,這樣名字重復(fù)了,所以就出錯了。

可以把程序改成這樣的話就行了:

import java.io.BufferedInputStream;

import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

public class FileCopy {

public void copy(String src, String dest){//**********

InputStream is=null;

OutputStream os=null;

char ch[]=src.toCharArray();

//************新添加的代碼**********

int pos=0;

for(int i=ch.length-1;i=0;i--)

{

if(ch[i]=='\\')

{

if(ipos)

pos=i;

}

}

String temp=src.substring(pos);

dest=dest+temp;

System.out.println("dest="+dest);

//****************************************

try {

is=new BufferedInputStream(new FileInputStream(src));

os=new BufferedOutputStream(new FileOutputStream(dest));

byte[] b=new byte[256];

int len=0;

String str=null;

StringBuilder sb=new StringBuilder();

try {

while((len=is.read(b))!=-1){

os.write(b,0,len);

}

os.flush();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}finally{

if(is!=null){

try {

is.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

} catch (FileNotFoundException e) {

e.printStackTrace();

}finally{

if(os!=null){

try {

os.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

public static void main(String[] args) {

FileCopy test=new FileCopy();

test.copy("G:\\G盤寄存資料\\我的文檔1\\hello.txt","G:\\G盤寄存資料");//++++++++++++++++++++++

}

}

網(wǎng)站題目:java文本復(fù)制的代碼,java文本復(fù)制的代碼是什么
地址分享:http://muchs.cn/article0/hcjsio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、移動網(wǎng)站建設(shè)外貿(mào)建站、品牌網(wǎng)站設(shè)計(jì)微信小程序、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)