Renomear arquivos

8 respostas
fabiodurgante

seguinte tenho 10 arquivos, quero selecionar eles atravez do

private void btnOpen3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnOpen3ActionPerformed

  JFileChooser jf = new JFileChooser();
        jf.setFileSelectionMode(JFileChooser.FILES_ONLY);
       
            if (jf.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
               arquivo = jf.getSelectedFile()   ;
  name_file.setText(arquivo.getName());
  Long size = (arquivo.length());
  
  size_file.setText(size.toString()+" KB");

     name_file.setVisible(true);
     size_file.setVisible(true);
               
            }

ai descobro tamanho nome do arquivo quero alterar o nome dos arquivos tipo seleciono 10 arquivos e o nome deles ficam 1.jpg 2.jpg 3.jpg assimpor diante alguem poderia me dizer como fazer ??

8 Respostas

ssh

file.renameTo();

essa function retorna valor boolean.

fabiodurgante

sim mas assim cara eu quero alterar o nome do arquivo entende

ssh

entendo sim cara, e é esse método que você deve utilizar.

File file = new File("C:/teste.txt");
File file2 = new File("C:/renomeiado.txt");
file.renameTo(file2);
//lembrando que os arquivos não podem estar abertos.
//também digitei no google e tem muitossssssssssssssss exemplos. da uma testada em alguns

O que acontece quando você tenta renomeiar? você quer renomeiar quando? depoois do arquivo ja estar no servidor/diretório?

explique melhor o que acontece, post o código que você já tem. Se não fica dificil agente tentar adivinhar.

abs

fabiodurgante

fiz assim esta funcionando perfeito so quero selecionar mais de 1 arquivo por vez como poderia fazer isso

package renomar_arquivo;

import java.io.File;
import javax.swing.JFileChooser;

/**
 *
 * @author Humberto
 */
public class Principal extends javax.swing.JFrame {
   File arquivo1 = null;



    /** Creates new form Principal1 */
    public Principal() {
        initComponents();
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        btnOpen = new javax.swing.JButton();
        btnOpen1 = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        btnOpen.setText("Abrir Arquivo");
        btnOpen.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnOpenActionPerformed(evt);
            }
        });

        btnOpen1.setText("Alterar Nomes");
        btnOpen1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnOpen1ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(186, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(btnOpen1)
                    .addComponent(btnOpen))
                .addGap(113, 113, 113))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(29, 29, 29)
                .addComponent(btnOpen)
                .addGap(93, 93, 93)
                .addComponent(btnOpen1)
                .addContainerGap(132, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>

    private void btnOpenActionPerformed(java.awt.event.ActionEvent evt) {
        JFileChooser jf = new JFileChooser();
        jf.setFileSelectionMode(JFileChooser.FILES_ONLY);

        if (jf.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
            arquivo1 = jf.getSelectedFile();
        }
           // arquivo com o novo nome
        File arquivo2 = new File("C:\\renomar_arquivo\\fabio.bmp");
        boolean ok = arquivo1.renameTo(arquivo2);
        if(ok){
            System.out.println("Arquivo renomeado com sucesso.");
        } else{
            System.out.println("Nao foi possivel renomear o arquivo.");
        }
    }

    private void btnOpen1ActionPerformed(java.awt.event.ActionEvent evt) {

        // arquivo com o novo nome
        File arquivo2 = new File("C:\\renomar_arquivo\\fabio.bmp");
        boolean ok = arquivo1.renameTo(arquivo2);
        if(ok){
            System.out.println("Arquivo renomeado com sucesso.");
        } else{
            System.out.println("Nao foi possivel renomear o arquivo.");
        }

    }

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Principal().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify
    private javax.swing.JButton btnOpen;
    private javax.swing.JButton btnOpen1;
    // End of variables declaration

}
ssh

fabiodurgante:
isso mesmo valeu cara e outra coisa tipo

JFileChooser jf = new JFileChooser();   
        jf.setFileSelectionMode(JFileChooser.FILES_ONLY);   
         
            if (jf.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {   
               arquivo = jf.getSelectedFile()   ;

variavel arquivo tem o arquivo q eu quero como posso fazer para escolher varios arquivos ir selecionando eles entende

Cara, simples. você lista todos os arquivos de um determinado diretório.

String dir = "C:/teste";
File diretorio = new File(dir);
File fileList[] = diretorio.listFiles();
for (int i = 0; i < fList.length; i++)
{
    System.out.println(fList[i].getName());
}
ssh

o que eu disse ajuda?

fabiodurgante

agora sim funcionou beleza desde ja agradeço a ajuda valeuu e desculpe-me o incomodo

File diretorio = new File("C:\\teste");
File fileList[] = diretorio.listFiles();

for (int i = 0; i < fileList.length; i++){

    System.out.println(fileList[i].getName());
   arquivo1 = fileList[i].getAbsoluteFile();

   
File arquivo2 = new File("C:\\renomar_arquivo\\fabio." +  i);
        arquivo1.renameTo(arquivo2);


}
ssh

um dia agente ajuda, o outro eh ajudado.

abs

Criado 21 de fevereiro de 2012
Ultima resposta 21 de fev. de 2012
Respostas 8
Participantes 2