JFileChooser代码示例如下:
publicclassBWFimplementsActionListener{
JFramef=null;
JLabellabel=null;
JTextAreatextArea=null;
JFileChooserfileChooser;
publicBWF() {
f=newJFrame("博为峰教育");
ContainercontentPane=f.getContentPane();
textArea=newJTextArea();
JScrollPanescrollPane=newJScrollPane(textArea);
scrollPane.setPreferredSize(newDimension(350, 300));
JPanelpanel=newJPanel();
JButtonb1=newJButton("新建文件");
b1.addActionListener(this);
JButtonb2=newJButton("退出文件");
b2.addActionListener(this);
panel.add(b1);
panel.add(b2);
label=newJLabel("",JLabel.CENTER);
//建立一个FileChooser对象,指定D盘目录为默认文件对话框路径
fileChooser=newJFileChooser("D:\\");
contentPane.add(label,BorderLayout.NORTH);
contentPane.add(scrollPane,BorderLayout.CENTER);
contentPane.add(panel,BorderLayout.SOUTH);
f.pack();
f.setVisible(true);
f.addWindowListener(newWindowAdapter() {
@Override
publicvoidwindowClosing(WindowEvente) {
System.exit(0);
}
});
}
publicstaticvoidmain(String[]args) {
newBWF();
}
@Override
publicvoidactionPerformed(ActionEvente) {
Filefile=null;
intresult;
if(e.getActionCommand().equals("新建文件")){
fileChooser.setApproveButtonText("确定");
fileChooser.setDialogTitle("打开文件");
result=fileChooser.showOpenDialog(f);
textArea.setText("");
if(result==JFileChooser.APPROVE_OPTION){
file=fileChooser.getSelectedFile();
label.setText("你打开的文件名为:"+file.getName());
}
elseif(result==JFileChooser.CANCEL_OPTION){
label.setText("你没有选择任何文件");
}
FileInputStreamfileInputStream=null;
if(file!=null){
try{
fileInputStream=newFileInputStream(file);
}catch(Exceptione1){
label.setText("没找到文件");
return;
}
Stringreadbyte=null;
try{
BufferedReaderbr=newBufferedReader(newInputStreamReader(fileInputStream));
while((readbyte=br.readLine())!=null){
textArea.setLineWrap(true);
textArea.append(String.valueOf(readbyte));
}
}catch(Exceptione1){
label.setText("读取文件错误");
}finally{
try{
if(fileInputStream!=null){
fileInputStream.close();
}
}catch(Exceptione1){
}
}
}
}
}
}