Analisar o caminho do arquivo XML truncados
-
21-09-2019 - |
Pergunta
Estou recebendo uma FileNotFoundException com o seguinte código:
File dataFile = new File("\\xx.xxx.xx.xxx\PATH\TO\FILE.xml");
if(dataFile.isFile())
{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
// Printing out File displays full path
Document doc = db.parse(dataFile);
}
Isso está resultando em uma fileNotFoundException: path to file.xml. Parece ter truncado o endereço IP fora do caminho. Eu verifiquei se o nome do caminho não inclui espaços e, se eu imprimir o caminho do objeto de arquivo antes de analisar, o caminho completo será exibido. Alguma ideia?
Estou executando o Java 1.5_14.
Solução
Tente mudar
File dataFile = new File("\\xx.xxx.xx.xxx\PATH\TO\FILE.xml");
para
File dataFile = new File("\\\\xx.xxx.xx.xxx\\PATH\\TO\\FILE.xml");
Lembre -se de que em Java, escapa do próximo personagem ...
Editar: Supondo que você esteja recebendo um FNFE da linha:
Document doc = db.parse(dataFile);
Então significa que o datafile.isFile()
está passando e, portanto, o arquivo deve existir. Apenas para fins de teste, você pode tentar mudar isso para:
Document doc = db.parse(dataFile.toURI().toString());
ou
Document doc = db.parse(new InputSource(new FileReader(dataFile)));
E veja o que acontece.
Outras dicas
Tente usar um URL completo com um esquema em vez do caminho UNC.
Arquivo: //xxx.xxx.xxx.xxx/path/to/file.xml