Copiar um arquivo em Java
Neste artigo, apresentaremos o método pelo qual você pode copiar um arquivo de um local para outro. Na linguagem Java, existem bibliotecas que nos permitem mover um arquivo para outro diretório. Vamos dar uma olhada mais detalhada.
Copiar arquivos por meio do código java envolve o armazenamento de um caminho de origem e de destino em duas strings diferentes. Posteriormente, capturamos nosso arquivo desejado por meio do caminho de origem e criamos sua cópia para o local de destino. Você precisa adicionar esta biblioteca para que o código a seguir funcione.
import static java.nio.file.StandardCopyOption.*;
Aqui estão algumas exceções que você precisa controlar.
Tratamento de exceções ao copiar arquivos em Java
A seguir estão as três palavras-chave de tratamento de exceções que podem ser úteis para você.
- Se você se deparar com uma situação em que um arquivo já está no local de destino (mesmo nome), você deve usar
REPLACE_EXISTING
. Isso substituirá o arquivo já existente. COPY_ATTRIBUTES
, esta palavra-chave preservada irá copiar os atributos vinculados ao arquivo de origem.- Se você não quiser que os links simbólicos sigam, o que significa que você não deseja copiar o link de destino, você pode usar
NOFOLLOW_LINKS
.
Exemplo de código de cópia de um arquivo em Java
import static java.nio.file.StandardCopyOption.*;
import java.io.*;
import java.nio.file.Files;
public class Main {
public static void main(String[] args) {
String sourcePath = "E:\\source location\\delftstack.txt"; // source file path
String destinationPath = "E:\\destination location\\"; // destination file path
File sourceFile = new File(sourcePath); // Creating A Source File
File destinationFile = new File(
destinationPath + sourceFile.getName()); // Creating A Destination File. Name stays the same
// this way, referring to getName()
try {
Files.copy(sourceFile.toPath(), destinationFile.toPath(), REPLACE_EXISTING);
// Static Methods To Copy Copy source path to destination path
} catch (Exception e) {
System.out.println(e); // printing in case of error.
}
}
}
No exemplo de código acima, como você pode ver, as bibliotecas foram adicionadas. Copiamos o caminho de origem, salvamos dentro de uma string sourcepath
e fizemos o mesmo com o local de destino.
Posteriormente, criamos um arquivo de origem (objeto de arquivo) e o passamos para a string do caminho de origem. Agora, sabemos que, embora geralmente copie e cole arquivos, o nome permanece o mesmo. Para fazer isso, usamos getName()
com o arquivo de origem.
Usando o Files.copy(source, target, REPLACE_EXISTING);
e passando os valores, copiamos um arquivo de texto em java no exemplo de código acima.
Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.
LinkedIn