【发布时间】:2015-07-24 00:04:10
【问题描述】:
我想修改通过相对路径浏览文件夹。 该代码仅浏览绝对路径并仅检查提供的目录是否为空...请帮助....提前感谢
包fyp;
导入 java.awt.Color;
公共类 Frame2 扩展 JFrame {
private JPanel contentPane;
private JTextField textField;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Frame2 frame = new Frame2();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Frame2() {
textField = new JTextField();
textField.setBounds(92, 107, 272, 20);
setTitle("Plagiarm Detection System\r\n");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 600, 300);
contentPane = new JPanel();
contentPane.setBackground(Color.LIGHT_GRAY);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JButton btnBrowse = new JButton("Browse");
btnBrowse.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new java.io.File("."));
chooser.setDialogTitle("Browse the folder to process");
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(true);
File file=new File("C:/Users/Shahzaib/Desktop/empty");
//File relative=new File("C:/Users/Shahzaib/Desktop/empty");
//System.out.println(relative.getName());
//System.out.println(relative.getPath());
//File file = new File("directory");
if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION)
{
textField.setText(chooser.getSelectedFile().toString());
//System.out.println("getCurrentDirectory(): "+ chooser.getCurrentDirectory());
//System.out.println("getSelectedFile() : "+ chooser.getSelectedFile());
}
if(file.isDirectory()){
if(file.list().length>0){
Component frame = null;
JOptionPane.showMessageDialog(frame, "Directory is Not Empty.");
}else{
Component frame = null;
JOptionPane.showMessageDialog(frame, "Directory is Empty.");
}
//else
//{
// Component frame = null;
//JOptionPane.showMessageDialog(frame, "No Selection.");
}
}
});
getContentPane().add(btnBrowse);
btnBrowse.setBounds(374, 106, 89, 23);
contentPane.add(btnBrowse);
contentPane.add(textField);
textField.setColumns(10);
JButton btnProceed = new JButton("Next");
btnProceed.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
new Frame2().setVisible(true);
}
});
btnProceed.setBounds(485, 227, 89, 23);
contentPane.add(btnProceed);
JButton btnBack = new JButton("Cancel");
btnBack.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
dispose();
new Frame().setVisible(true);
}
});
btnBack.setBounds(374, 227, 89, 23);
contentPane.add(btnBack);
JLabel lblNewLabel = new JLabel("Choose Folder of Assignments");
lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 15));
lblNewLabel.setBounds(180, 11, 235, 50);
contentPane.add(lblNewLabel);
}
}
【问题讨论】:
-
我通过提到的绝对路径获取文件夹 File file = new File("C:/Users/Shahzaib/Desktop/empty");....我想让它相对但没有不能这样做...请告诉我解决方案...提前谢谢
标签: java