コード例 #1
0
  private void localizarButtonActionPerformed(
      java.awt.event.ActionEvent evt) { // GEN-FIRST:event_localizarButtonActionPerformed

    try {
      JFileChooser chooser = null;
      if (StringHelper.isBlank(field.getText())) {
        chooser = new JFileChooser(System.getProperty("user.home"));
      } else {
        chooser = new JFileChooser(field.getText());
      }

      FileNameExtensionFilter extension = new FileNameExtensionFilter("Arquivo Xml (*.xml)", "xml");
      chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
      chooser.setAcceptAllFileFilterUsed(false);
      chooser.setFileFilter(extension);
      chooser.setFileHidingEnabled(true);
      chooser.setMultiSelectionEnabled(true);

      chooser.setApproveButtonText("Abrir");

      int choice = chooser.showOpenDialog(this);

      if (choice == JFileChooser.APPROVE_OPTION) {
        File oneFile = chooser.getSelectedFile();

        String path = null;
        path = oneFile.getPath();
        String nomeArquivo = StringHelper.substringAfterLast(path, SO.getSepArqSO());
        String caminhoArq = StringHelper.substringBeforeLast(path, SO.getSepArqSO());
        if (defaultListModel.contains(new InfoArq(nomeArquivo, caminhoArq))) {
          throw new Exception("O arquivo com este mesmo caminho ja existe na lista abaixo!");
        }
        field.setText(path.substring(0, path.lastIndexOf(SO.getSepArqSO())));

        File[] files = chooser.getSelectedFiles();
        for (File file : files) {
          defaultListModel.addElement(
              new InfoArq(
                  file.getName(),
                  StringHelper.substringBeforeLast(file.getPath(), SO.getSepArqSO())));
        }
      }
    } catch (Exception ex) {
      ex.printStackTrace();
      JMessageUtil.showInfoMessage(this, ex.getMessage());
    }
  } // GEN-LAST:event_localizarButtonActionPerformed