Como faço para fazer um metodo genérico que passe uma string e traga o arquivo de acordo com a string especificada.
Você poderá utilizar:
Chame o método: String s = arquivo("C:\arq.txt");
[code]
public String arquivo(String caminho_do_arquivo){
String S = null;
try
{
FileInputStream in = new FileInputStream(caminho_do_arquivo);
byte bt[] = new byte[10240];
in.read(bt);
S = new String(bt);
in.close();
}
catch(java.io.IOException exc)
{
System.out.println("Erro ao ler o arquivo");
}
return S;
}
pcalcado
Anonymous:
Olá pessoal
Eu preciso de um metodo em java que eu selecione os nomes dos arquivos dos arquivos de acordo com a string informada, por exemplo:
Você pode usar expressões regulares (java.util.regex.*) - só que as expressões regulares do Java são diferentes dos “wildcards” do Windows ou do Unix.
Por exemplo (não testei as expressões regulares…)
Você pode até fazer um método que converte wildcards para expressões regulares.
Atenção: no Windows os nomes dos arquivos não fazem distinção entre maiúsculas e minúsculas, portanto deve-se converter o nome para minúsculas antes de usar a expressão regular acima.
Você pode usar expressões regulares (java.util.regex.*) - só que as expressões regulares do Java são diferentes dos “wildcards” do Windows ou do Unix.
Por exemplo (não testei as expressões regulares…)
Você pode até fazer um método que converte wildcards para expressões regulares.
Atenção: no Windows os nomes dos arquivos não fazem distinção entre maiúsculas e minúsculas, portanto deve-se converter o nome para minúsculas antes de usar a expressão regular acima.
Gostaria de criar um filtro? por exemplo: Abrir só arquivos .txt. ou .doc, etc…?
pcalcado
Eu tô muito confuso…
Tá, ele ia fazer isso onde? Existe algum método que retorne arquivos baseados na expressão regular?
RRaminelli:
Gostaria de criar um filtro? por exemplo: Abrir só arquivos .txt. ou .doc, etc…?
Acho qeu sim, mas nem sei mais… anônimo… o que diabos queres? :roll:
[]s
J
joseneuza_aguiar
é o seguinte a minha aplicação precisar abrir os arquivos iniciados com REGL e fazer uma operação. REGL*.*
precisa abrir um arquivo do tipo TXT e fazer uma outra operação. *.TXT
precisa abrir um arquivo iniciado com ata???s.001 e fazer uma outra operação.
Ou seja preciso de um comando em java que eu utilizarei no metodo getArguivos(diretorio, REGL*.*)
O metodo vai devolver um array com todos os nomes de arquivos do diretorio especificado com os nomes dos arquivos passados no parâmetro da função
Por exemplo getArquivos(diretorio, REGL*.*) Devolve um array com os nomes dos arquivos iniciados por REGL e qualquer extensão.
getArquivos(diretorio, ata???s.001) vai devolver uma lista com os nomes de arquivos iniciados com ata??? (cinco caracteres desconhecidos) ultimo caractere do nome do arquivo é um “s” e tem a extensão 001.
e assim para os outros…
RRaminelli
joseneuza:
é o seguinte a minha aplicação precisar abrir os arquivos iniciados com REGL e fazer uma operação. REGL*.*
precisa abrir um arquivo do tipo TXT e fazer uma outra operação. *.TXT
precisa abrir um arquivo iniciado com ata?????s.001 e fazer uma outra operação.
Ou seja preciso de um comando em java que eu utilizarei no metodo getArguivos(diretorio, REGL*.*)
O metodo vai devolver um array com todos os nomes de arquivos do diretorio especificado com os nomes dos arquivos passados no parâmetro da função
Por exemplo getArquivos(diretorio, REGL*.*) Devolve um array com os nomes dos arquivos iniciados por REGL e qualquer extensão.
getArquivos(diretorio, ata?????s.001) vai devolver uma lista com os nomes de arquivos iniciados com ata????? (cinco caracteres desconhecidos) ultimo caractere do nome do arquivo é um "s" e tem a extensão 001.
e assim para os outros...
Para filtar qual arquivo deve ser aberto você pode utilizar o JFileChooser e indicar o começo, o fim do arquivo.....
[code]
chooser.setFileFilter(new javax.swing.filechooser.FileFilter(){
public boolean accept(File f){
return (f.getName().toLowerCase().startsWith("ARQ") && f.getName().toLowerCase().endsWith(".doc")) || f.isDirectory();
}
public String getDescription(){
return "*.doc";
}
});
pcalcado
Para filtrar apenas o nome do arquivo numa lista, use os métodos das classes de IO para retornar o conteúdo de diretórios e compare o nome dos arquivos com expressões regulares (como o thingol falou) ou faça um filtro como eu falei.