pessoal estou tentando ler um arquivo em uma maquina na rede local e não estou conseguindo como faço ?
fileIn = new FileInputStream("\10.10.10.21\home\temp\TesteImport.xls");
uso assim mais da erro. :oops:
pessoal estou tentando ler um arquivo em uma maquina na rede local e não estou conseguindo como faço ?
fileIn = new FileInputStream("\10.10.10.21\home\temp\TesteImport.xls");
uso assim mais da erro. :oops:
pessoal estou tentando ler um arquivo em uma maquina na rede local e não estou conseguindo como faço ?fileIn =
new FileInputStream("\10.10.10.21\home\temp\TesteImport.xls");uso assim mais da erro. :oops:
Ahn, isso não está dando erro de compilação, para começar? ("\h" e “\T” devem estar dando erro “illegal escape character”
Você precisa duplicar todos os “” se for usar dentro de uma constante String definida no seu programa.
fileIn = new FileInputStream("\\10.10.10.21\home\temp\TesteImport.xls");
Você pode também inverter as barras, que não fica errado (o Java passa isso diretamente para o Windows, e ele converte as “” para “/”. O Windows só encrenca com as barras quando você usa na linha de comando, ou então digitando na barra do Windows Explorer.
fileIn = new FileInputStream("//10.10.10.21/home/temp/TesteImport.xls");
Ja tentei assim e nao vai
Olá
Oberdan, dá uma chance para nós. Diz exatamente o que está acontecendo. Descreva seu ambiente, mostre o código e qual mensagem de erro. E certifique-se que o arquivo está acessível para qualquer usuário.
[]s
Luca
try
{
fileIn = new FileInputStream("\\\\10.10.10.7\\Temp\\TesteImport.xls");
POIFSFileSystem fs = new POIFSFileSystem(fileIn);
}catch(Exception e){
System.out.println("Erro : "+e);
}
da essa mensagem de erro :
Erro : java.io.FileNotFoundException: \10.10.10.7\Temp\TesteImport.xls (No such file or directory)
já dei permissão a todos usuarios para essa pasta.
Pergunta boba número um - se você abrir um “prompt” do DOS nessa máquina que roda o seu programa, e tentar copiar o arquivo, o que ela faz?
copy \10.10.10.7\temp\TesteImport.xls nul
a) Você fica um tempão esperando, e no fim das contas ou você desiste, ou
você recebe o erro “Network path not found”
b) A mensagem “1 file(s) copied”
c) A mensagem “The system cannot find the file specified.”
d) A mensagem “The network path was not found.”
e) …
Só no caso b) é problema no Java. Nos outros casos você tem de resolver (nome errado de arquivo, permissão, endereço errado da máquina etc.)
a) O endereço está errado.
c) O arquivo não existe com esse nome.
d) Não existe um share com esse nome.
e) …
Meu velho veja bem minha maquina é linux e dessa forma não funciona . tentei em uma maquina windows e funciona . o que faço . O mapiamento da rede é diferente.
Ai nao eh problema do Java - para contornar tente instalar o Samba de modo que o Linux “enxergue” o compartilhamento por si mesmo. Entao via Java deve funcionar.
Se ficar muito complicado considere outras alternativas mais “universais”, como FTP e outras. Talvez compense - depende do teu cenario.
Marcio Kuchma
De fato, no Linux não funciona a notação UNC (\maquina\share\arquivo). Você precisa montar esse share no Linux, isso você deve saber melhor que eu (ou então consulte algum HOWTO…)
Nomes de arquivos em programas Java indicam problemas de portabilidade. Se você tem um programa que tem um nome de arquivo “bitolado” dentro do programa, provavelmente você terá algum problema.
Veja aqui como é que se acessa um share no Linux.
You can also automate the mounting of shares by placing entries in your /etc/fstab file. In the example below the home directory of user peter on server 192.168.1.100 will be mounted on the /mnt/smb mount point as a samba filesystem (smbfs) using the login information in the file named /etc/cred.
//192.168.1.100/peter /mnt/smb smbfs credentials=/etc/cred 0 0
The contents of the /etc/cred file needs to have the username and password for the account in this format:
username = peter
password = peterspassword
Once finished you can use the “mount -a” to mount the new /etc/fstab entry and the /mnt/smb directory will now contain the contents of the share.
[root@smallfry tmp]# mount -a
[root@smallfry tmp]# ls /mnt/smb
backups profile docs data music
[root@smallfry tmp]#
mas como eu usaria entao essa barra \ ??
precisava destrinxar uma url
ai eu tento:
String teste2 = (“C:\Java\workspace\poixls\21-05\PoiJava\src\java\com\cyber\Read_.xls”);
String valor = “”;
String [] y = teste2.split(valor);
No seu código, duplique as “”, ou então use “/” (O Windows troca as “/” por “” em nomes de arquivos, como eu mencionei acima.
// mais fácil e funciona bem
String teste2 = ("C:/Java/workspace/poixls/21-05/PoiJava/src/java/com/cyber/Read_.xls");
String valor = "/";
...
ou
...
// Acho que dá trabalho e pode dar confusão, principalmente com "split".
String teste2 = ("C:\Java\workspace\poixls\21-05\PoiJava\src\java\com\cyber\Read_.xls");
String valor = "\\"; // por causa do split, que sempre requer uma expressão regular.
cara vc falo “troque” como se eu soubesse fazer…
acontece q essa url é a indicacao do meu programa pra aonde esta o arquivo na maquina do cara, ai ele faz o upload pra o servidor e eu nao consigo pegar o nome do arquivo.
url = C:\Java\workspace\poixls\21-05\PoiJava\src\java\com\cyber\Read_.xls
como eu vo dar um sustring se eu nao posso digitar string sd = “” ??
ou ainda, como eu vou dizer pra a jvm que eu quero duplicar um valor que eu nao consigo digitar ???
ai fodeu!!!
AEEEEEEEEEEEEEEEEE
CONSEGUIIIIIIIII
VALEU TRUTAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8) 8)
Galera, no lugar do / (Linux/Unix) ou \ (Win32), use o java.io.File.separator, ele eh dinamico (quem cuida eh VM) onde ele coloca a barra do sistema operacional. Qualquer duvida, may day. Abracos.