正文
IO流中File文件最常用和直接的用法
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
一、File
(一)概述
1、File:
1)文件和目录(文件夹)路径名的抽象表示形式
2)注意:
- 可以表示文件夹与文件,即路径与文件
- 抽象概念,即路径与文件是否存在不确定
2、构造方法
1)File(String pathname):根据一个路径得到File对象
- File file = new File("E:\\demo\\a.txt");
2)File(String parent, String child):根据一个目录和一个子文件/目录得到File对象
- File file2 = new File("E:\\demo", "a.txt");
3)File(File parent, String child):根据一个父File对象和一个子文件/目录得到File对象
- File file3 = new File("e:\\demo");
- File file4 = new File(file3, "a.txt");
package ltb20180106; import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*; class ChineseTextEdit { private JFrame jf;
private Chinese jp2;
private JTextArea jt;
private JButton save;
private JButton exit;
private JButton cancel;
private JScrollPane js;
private File f;
private FileWriter fw; public ChineseTextEdit() { try { jp2=new Chinese();
f=new File("D:\\myRead\\ltb6w.txt");
fw=new FileWriter(f);
save=new JButton("保存");
save.addActionListener(jp2);
exit=new JButton("退出");
exit.addActionListener(jp2);
cancel=new JButton("取消");
cancel.addActionListener(jp2); jp2.setLayout(new FlowLayout());
jp2.add(save);
jp2.add(cancel);
jp2.add(exit); jt=new JTextArea();
jt.setRows(6);
jt.setLineWrap(true);//自动换行 js=new JScrollPane(jt);
js.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);//水平滚动条
js.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);//垂直滚动 jf=new JFrame("文本编辑器");
jf.setSize(400, 200);
jf.setLayout(new BorderLayout()); jf.add(js,BorderLayout.NORTH);
jf.add(jp2,BorderLayout.SOUTH); jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
jf.setVisible(true); }catch(Exception e) { System.out.println(e.getMessage());
} } @SuppressWarnings("serial")
class Chinese extends JPanel implements ActionListener { private String bname;
private String text; Chinese() { //System.out.println("Chinese");
} @Override
public void actionPerformed(ActionEvent arg0) { bname=arg0.getActionCommand(); if(bname.equals("保存")) { text=jt.getText(); try {
fw.write(text);
fw.flush();
fw.close();
}catch (IOException e) { System.out.println(e.getMessage());
} }else if (bname.equals("取消")) { jt.setText(""); }else if(bname.equals("退出")) { jf.dispose();
} } } public static void main(String[] args) { new ChineseTextEdit(); } }