這是我原來做的例子,里面有文件儲存的內(nèi)容,代碼不多,給你參考參考.
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比卓資網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式卓資網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務覆蓋卓資地區(qū)。費用合理售后完善,十載實體公司更值得信賴。
/**
* 五個按鈕的故事,西西哈。
*/
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class FileMessage extends Frame implements ActionListener
{
private static final long serialVersionUID = 10L;
Dialog dia;
private Panel p;
private File fi;
Process po=null;
private String s;
private TextArea ta;
private FileDialog fd;
private Button b1,b2,b3,b4,b5;
private Button b6;
public FileMessage()
{
super("文本文件處理");
setBackground( Color.LIGHT_GRAY );
setLocation(200,300);
setResizable( false);
setVisible( true);
addWindowListener( new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit( 0);
}
});
}
public void init()
{
ta=new TextArea("\n\n\n\n\n\t\t\t\t文本顯示區(qū)");
ta.setSize(30,5);
ta.setEditable(false);
add( ta,"North");
p=new Panel();
add( p,"Center");
b1=new Button("瀏覽");
b2=new Button("保存");
b3=new Button("清空");
b4=new Button("關(guān)閉");
b5=new Button("獨立打開");
b6=new Button("確定");
p.add(b1);
p.add(b2);
p.add(b3);
p.add(b4);
p.add(b5);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
b5.addActionListener(this);
b6.addActionListener(this);
fd=new FileDialog(this,"請選擇文件",FileDialog.LOAD);
fd.setDirectory("f:\\note");
pack();
dia=new Dialog(this,"注意",true);
dia.setLayout(new BorderLayout());
Panel p1=new Panel();
p1.add( b6);
dia.add(new Label(" 請先選擇文件"),BorderLayout.CENTER);
dia.add( p1,BorderLayout.SOUTH);
dia.addWindowListener( new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
dia.setVisible( false);
}
});
dia.setLocation(310,370);
dia.setSize(200,130);
}
public static void main(String[] args)
{
new FileMessage().init();
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==b1)
{
fd.setVisible(true);
s=fd.getDirectory()+fd.getFile();
fi=new File(s);
byte[] b=new byte[(int)fi.length()];
try
{
new FileInputStream(fi).read(b);
ta.setText(new String(b,0,(int)fi.length()));
}
catch(Exception e1){}
ta.setEditable(true);
}
else if(e.getSource()==b2)
{
try
{
if(ta.getText().equals("保存成功")||ta.getText() .equals( ""))
{}
else
{
new FileOutputStream(fi).write(ta.getText().getBytes());
ta.setText("保存成功");
ta.setEditable(false);
}
}
catch(FileNotFoundException e1)
{
ta.setText(e1.getMessage());
}
catch(IOException e1)
{
ta.setText("出現(xiàn)IOException異常");
}
}
else if(e.getSource()==b4)
System.exit(0);
else if(e.getSource()==b3)
{
ta.setText("");
ta.setEditable( false);
}
else if(e.getSource()==b5)
{
if(s==null)
{
dia.setVisible(true);
}
else
{
try
{
po=Runtime.getRuntime().exec("notepad.exe "+s);
}
catch(Exception ei)
{}
}
}
else if(e.getSource() ==b6)
{
dia.setVisible(false);
}
}
}
首先創(chuàng)建一個新的txt文件,然后new File(“txt文件路徑”),
封裝一個輸入輸出流,將要寫入的數(shù)據(jù)寫入到txt中,刷新流,關(guān)閉流。
代碼如下:
public static void main(String[] args) throws IOException{
String str = "這個項目什么時候上線";
File file;//創(chuàng)建文件夾
FileOutputStream stream = null;//new文件流
try {
file = new File("C:/Users/qisf/Desktop/Aa.txt");
stream = new FileOutputStream (file);//將文件夾放在文件流中
if (!file.exists()) {
file.createNewFile();
}
byte[] contentInBytes = str.getBytes();//轉(zhuǎn)化成字節(jié)形
stream.write(contentInBytes);//寫入
stream.flush(); //寫完之后刷新
stream.close();//關(guān)閉流
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
/****************
* 文件讀取與保存
*
* @author Administrator
*
****************/
public class FileOption {
/**
* 根據(jù)路徑讀取文件
*
* @param readPath
* 讀取文件的路徑
* @return
* @throws Exception
*/
public String readFile(String readPath) throws Exception {
return readFile(new File(readPath));
}
/**
* 讀取文件
*
* @param file
* @return
* @throws Exception
*/
public String readFile(File file) throws Exception {
BufferedReader br = new BufferedReader(new FileReader(file));
StringBuffer sbf = new StringBuffer("");
String line = null;
while ((line = br.readLine()) != null) {
sbf.append(line).append("\r\n");// 按行讀取,追加換行\(zhòng)r\n
}
br.close();
return sbf.toString();
}
/**
* 寫入文件
*
* @param str
* 要保存的內(nèi)容
* @param savePath
* 保存的文件路徑
* @throws Exception
* 找不到路徑
*/
public void writeFile(String str, String savePath) throws Exception {
BufferedWriter bw = new BufferedWriter(new FileWriter(savePath));
bw.write(str);
bw.close();
}
public static void main(String[] args) {
FileOption fop = new FileOption();
String filePath = "d:/derby.log";
String str = null;
try {
str = fop.readFile(filePath);
System.out.println(str);
} catch (Exception e) {
System.out.println("文件不存在");
}
String savePath = "d:/derby.log.bak";// 將上一個讀取的文件另存一份
try {
fop.writeFile(str, savePath);
} catch (Exception e) {
System.out.println("保存文件失敗(路徑錯誤)");
}
}
}