Salve!! Q massa q o conteúdo ajudou!! A idéiando canal é essa mesma... qualquer duvida to por aqui... se preferir tem uma playlist completa de fundamentos de Java q eu dedico uma aula inteira a falae de arquivos.
2021 e usei algo de 2015 para escrever em um arquivo do projeto o qual trabalho....precisava escrever de uma forma mas tudo que achava não dava certo e colocando 2 linha no código usando seu exemplo me ajudo em algo q eu tava a mais de 1 horas procurando sobre
show Franciel!!! no fundo o conceito é o mesmo!! Independente do ano (ou da versão do Java), o acesso a arquivos é igual!!! que bom que o conteúdo ajudou!!! To aqui pra isso :)
Louis vc nao tem idéia de como sua mensagem me deixa feliz. Ainda mais em saber q pude ajudar minimamente pra isso. Parabéns. O mérito é todo seu e continue nessa caminhada q vai te trazer muitas realizações. Conte sempre comigo!!
// Para mostrar os caracteres especiais "ISO-8859-1" FileInputStream arquivo = new FileInputStream(LocalArquivo); InputStreamReader input = new InputStreamReader(arquivo, "ISO-8859-1"); BufferedReader br = new BufferedReader(input);
Parabéns pelo video! show de bola estou começando e estava precisando disto !!! minha intenção é preencher uma combobox com informações de um arquivo texto.
+Nelson Poker perdão pela demora, eu não recebi a notificação. Vc precisa basicamente preencher um ArrayList e associar este arrayList lido ao seu ComboBox. Se não me engano, a instrução é o setListData(seuArrayList) Veja se rola e me avisa!! Valeu
Paulo não consigo responder diretamente seu comentário, mas a questão da Interface gráfica vc pode fazer da seguinte maneira: Criar um objeto que só manipula arquivos (recebe um objeto que vc preenche na Interface e ele faz a gravação ou leitura) e aí invocá-lo no evento de botão da sua interface. Abraço!
Salve Lucas!!! Valeu mesmo pela mensagem!! Sugestão mais que aceita... se quiser trocar mais idéias, me manda um e-mail com as sugestões que vc tá pensando... são uma excelente forma de eu poder direcionar o conteúdo. (meu email tá na descrição do canal ou pelo site www.professorisidro.com.br)
Paulo a idéia é bem essa... cada linha do seu arquivo é um registro completo que vc pode dividi-lo em colounas através de algum caractere delimitador (como eu fiz no exemplo). Boa sorte nos estudos :)
Vi que o Java possui várias formas de ler e gravar arquivos. Inclusive, a partir da versão 7 ou 8 já pode usar a classe scanner para ler arquivo. Acho mais fácil usar o bufferedReader/Writer com FileReader/Writer como parâmetro.
Salve Fernando. Sim! Tem mtas alternativas para vc ler arquivos (inclusive usando a api java.NIO que é super rápida). Se vc quiser dar uma olhada, eu tb tenho outra aula q falo de arquivos textos e arquivos binários em uma playlist de Fundamentos de Java. Valeu!!! Abração
Bruno!! Eu que agradeço a mensagem!! Se vc quiser, tem uma playlist de fundamentos de java aqui no canal q eu dou uma aula mais "completa" sobre manipulação de arquivos! Fique à vontade pra trocarmos idéias. Valeu
Excelente aula!!!! Como faço pra fazer com que toda vez que que o usuário digitar e der enter, oq ele colocou seja armazenado na linha seguinte no arquivo? sem perder a informação anterior?
Salve Lucas, beleza? Tá fácil.. na hora de vc criar o arquivo, basta vc incluir um 2o parâmetro boolean valendo TRUE para ele criar o arquivo em modo append. Assim: f = new FileOutputStream(nome_do_arquivo, true); se vc quiser a referência desta classe, tá na mão :D docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html#FileOutputStream(java.lang.String,%20boolean) espero ter ajudado!! valeu!
Salve Gunther beleza? Pelo metodo q eu uso nesse programa, vc tem q ler linha a linha e quando chegar na sua linha escolhida (tipo vc usar um contador pra indicar o numero de linhas lidas) vc pode sim testsr se é a linha escolhida e ler o valor... é perfeitamente possivel.
@@psYOrpheM Vamo lá Gunther... vou tentar colocar um "algoritmo" aqui bele? numeroDaLinha = 0; do{ linha = br.readLine(); // li o conteudo do arquivo numeroDaLinha = numeroDaLinha+1; // contei +1 linha if (numeroDaLinha == X) { // se o numero da linha for efetivamente do conteudo q eu preciso variavel = linha; // ou alguma outra função de conversão ou para extrair dados da linha break; // aí interrompe o loop pq não preciso mais ler o arquivo, cheguei na linha q queria } } while (linha != null); ajudei? valeu!!
Salve Tiago, bele? Tem sim... se vc usa o InputStreamReader, existe um método chamado getEncoding que vc pode utilizar para saber a codificação do arquivo (docs.oracle.com/javase/7/docs/api/java/io/InputStreamReader.html#getEncoding%28%29). Agora, se vc quiser abri-lo com outra codificação, aí vc tem que criar um InputStreamReader passando esse charset e aí retornar o inputstream dele para poder fazer a leitura efetiva.
@@professorisidro Salve, Eu entendi professor mais a dúvida que eu tenho é para a criação do arquivo e não para a leitura. Como que eu uso o OutputStream e determinar o charset desse arquivo a ser criado. Por exemplo: o padrão é UTF-8 mais vamos supor que eu quero criar um arquivo.txt com o charset Unicode.
@@tiagosantana3499 Aaaah agora entendi... Então vc tem o objeto OutputStreamWriter que vc pode instanciar e mandar escrever nele. Ele tem um construtor onde vc passa qual o Arquivo (outputStream) e o tipo de codificação que vc quer... Olha a API dele aqui docs.oracle.com/javase/7/docs/api/java/io/OutputStreamWriter.html#OutputStreamWriter(java.io.OutputStream,%20java.lang.String) veja se ajuda!!!
Salve Maikon!!! valeu pela dica!!! Vou observar isso sim :D Também tem outros vídeos em outras playlists... se puder dar uma olhada neles tb pra ver se estão bacanas, é legal pra ter um parâmetro (eu coloquei alguns em HD pra poder resolução ficar melhor na hora de ler o código). Abração
Maravilha Isidro !! E se eu quiser imprimir os dados do arquivo salvo no diretório(arquivo.txt) em uma JList através de um JMenuItem, o que devo fazer ?
Funcionou perfeitamente professor. Gostaria de saber como faço para adicionar mais nomes ao mesmo arquivo. Para que quando fosse executado novamente o programa, fosse acrescentado e não sobrescrito
Salve Thiago, bele? A única diferença é que, ao invés de vc usar apenas a classe File, troque-a por um FileWriter... aí o construtor dela fica como FileWriter f = new FileWriter("arquivo.txt", true); esse "true" indica que vc vai fazer operacões de append, ou seja, inserir novos valores no final do arquivo ;-) ajudei? valeu!!!
Ajudou sim professor, eu tinha encontrado esse solução ontem mesmo, mas não sabia o que estava fazendo o 'true', agora entendi. Obrigado. Parabéns pela iniciativa, ótimos videos
Olá Walesca tudo bem? É possível sim, no caso o arquivo que você criar no bloco de notas pode conter 1 ou 2 linhas com o usuário e a senha. Claro que este é um método extremamente inseguro pois o arquivo será lido por qualquer pessoa. Mas para testes e aprendizado, é um exemplo de como vc pode usar arquivos para recuperar estas informações. Ajudei?
Francisco, tenho interesse em passar dados numéricos em um formato de matriz presentes em um arquivo txt para um array multidimensional ( uma matriz semelhante ao arquivo txt), afim de manipular os valores da matriz (realizar cálculos). Como faço esse procedimento?
+vinicius Carneiro Salve Vinícius. Basicamente pensa assim: - Ler linha a linha, ok? - Para cada linha lida, vc irá decompor os termos em um vetor de várias colunas, certo? (tipo separando por vírgulas ou ponto-e-vírgula na notação do seu arquivo). - Terceiro, vc deve fazer a conversão para cada valor lido (pois tudo é lido como String neste exemplo) e a partir disso, percorrer sua matriz linha/coluna Consegui explicar? Valeu
+Francisco Isidro Massetto Obrigado Francisco. A sua colaboração tem sido de grande ajuda. Ainda estou com algumas dúvidas na elaboração do código, mas estou fazendo como você diz.
Como faço para criar um classificador de textos? por exemplo, o usuário digita um anúncio de venda de automóvel, ao dar enter, o programa retorna "anúncio de produto".
Marcos depende do que você define como "classificador". Você pode classificar um texto colocando palavras em alguma ordem (alfabética, por exemplo). Aí você teria que ler as palavras do arquivo e aplicar algum algoritmo de classificação/ordenação sobre essas palavras (Bubble Sort, Quick Sort, etc). Outras formas de classificação podem ter como base algumas heurísticas que pegam palavras por "aproximação" ou mesmo "similaridade". Aí os algoritmos podem ficar muito mais complexos (dependendo do que se busca). Me fala mais sua dúvida pra eu poder ajudar. Valeuuu
A proposta deste trabalho é implementar um programa que, dado um texto em português, identifique qual dentre os seguintes assuntos ele se trata: • Bula de medicamento; • Anúncio de produto; • Miguxês (texto com gírias e abreviações de internet); • Texto de livro de matemática; • Texto de livro de biologia - Arquivo de entrada : O arquivo de entrada conterá simplesmente um texto redigido em uma ou mais linhas. Por estar em arquivo TXT, ele não terá quaisquer tipos de formatação especial. Abaixo, um exemplo de arquivo de entrada: Vendo Gol 1.0 16v 4 Portas Ar condicionado (precisa de revisão) Direção Hidráulica Doc ok Mecanica revisada Com entrada boa, faço o restante em boleto bancário precisa de alguns detalhes de lataria. Cel/whats: 67 99999-9999 - Arquivo de saída : O arquivo de saída conterá simplesmente a categoria a qual o texto do arquivo de entrada se trata. Abaixo, o arquivo de saída referente ao texto da seção anterior: Anúncio de produto Qualquer dúvida quintana.mqf@gmail.com
Marcos na verdade você tem que ler um arquivo texto e pelo visto verificar se algumas palavras se encontram nele... defina algum dicionário de palavras-chave que possam estar contidas em cada um dos textos. Ex: Se seu texto contem a palavra "vendo", "vender", "troco", "trocar", etc ele é um anúncio. Se tiver "posologia", "contra-indicações", ou qualquer outro, pode ser uma bula... e assim por diante....
Victor Lucas Depende muito da linguagem e também do programador.Por exemplo: Android: Eclipse, Android Studio Windows Phone: Visual Studio IOs: XCode Games: Unity, Unreal, VIsual Studio, Eclipse
+mayco douglas Salve Mayco, claro q consegue... cada linha do arquivo pode corresponder a uma linha da sua matriz... vc pode separar os valores por espaço, por exemplo, e aí na hora de setar cada elemento, vc faz um Integer.parseInt de cada um... não é difícil não... pelo próprio exemplo dá pra ter uma boa noção :D
olá professor ótima aula! Gostaria de saber uma questão Por que quando uso um FOR dentro do while (linha != de null) que fica dentro do try, o código funciona, mas aparece a mensagem de erro do catch
Salve Vinicius bele? na verdade não dá pra gravar direto.. vc teria que percorrer seu arraylist e gravar objeto por objeto (vc teria mais controle).... eu tenho uma outra aula na playlist de fundamentos de java que fala de manipulação de arquivos e fazemos exatamente esse exemplo.. ruclips.net/video/A4aWDtQh8CQ/видео.html veja se ajuda!!! Valeu!!!
boa tarde Francisco e como eu poderia limitar a leitura por caracteres? tipo exemplo: linha = 55555kkkkkabobrinha, onde tenho que separar os números, os kkk e a abobrinha pela quantidade de caracter. sds Alex Santos
Alex Santos Alex bele? dá pra vc usar a substring... vc informa a posição inicial e a quantidade de caracteres a partir dela e você já separa... dá uma olhada em: docs.oracle.com/javase/8/docs/api/java/lang/String.html
Salve Ramon td bem? Vamos la: O FileWriter é usado para você gravar arquivos texto enquanto que o FileOutputStream te permite gravar outras informações binarias (tipo bytes de uma imagem). Ja o BufferedWriter pode ser usado pq a operação de write disponível no FileOutputStream e no FileWriter grava diretamente no arquivo, sendo uma operação de acesso direto ao disco. O uso do BufferedWriter traz melhor desempenho pq vc vai gravando em um buffer (ou seja, na memoria) e quando esse buffer atinge sua capacidade, aí sim é gravado no disco. Ajudei? Valeu!!
Professor, fui a uma palestra sua a uns 15 anos atraz, blz, estou precisando de fazer um sistema em java para ler tudo que entrar em uma rede privada, mas a rede nao tem um padrão o Sr tem uma ideia para me passar? por favor Obrigado.
+Jonatha Lima Olá Jonatha tudo bem? Na verdade se você não quiser, não é necessário não. Você pode mudar a linha para BufferedReader br = new BufferedReader(new InputStreamReader(arquivo)); A idéia do código era ser didático :D abraço!!
professor, estou tentando colocar esse arquivo de texto em um jtextField...mas so aparece uma linha. no que eu estaria errando,? segue o codigo: recebe.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { // TODO Auto-generated method stub String linha; FileInputStream input; try { input = new FileInputStream("Animais.txt"); InputStreamReader reader= new InputStreamReader(input); BufferedReader buffer= new BufferedReader(reader); linha=buffer.readLine(); String animais[]=linha.split(";"); for( int i=0;i
Wenderley Carlos Olá Wenderley... vou te dar 2 dicas:- Forma 1: Leia tudo, grave em uma estrutura de dados (mantenha em memória) e depois faça a escrita de tudo no arquivo. Isso é meio feio, mas é uma das maneiras - Forma 2: o FileOutputStream tem uma sobrecarga no seu construtor, onde vc passa o nome do arquivo e um boolean se ele é "anexável" no final. Algo assim: FileOutputStream f = new FileOutputStream("arquivo.txt", true); aí vc só cria um PrintWriter e toda vez q vc der println ele escreve no final do arquivo. Espero ter ajudado!
Salve Lucas. Usando a estratégia que eu fiz, o mais viável é vc ler todo o conteúdo, armazenar em uma lista todos os registros que vc quer (obviamente eliminando aquele que vc vai excluir) e aí refazer o arquivo. Existem outras técnicas que se vc usar registros de tamanho fixo, vc pode ir até a posição do registro e escrever uma quantidade de bytes nele para poder alterá-lo (isso chama-se acesso aleatório a arquivos). Ou usar a estratégia dos bancos de dados que não excluem efetivamente, apenas marcam um registro como sendo inválido. Ajudei? abração
Lucas, perdão, não havia visto sua mensagem... então.. por conta dessa estratégia q eu usei, o ideal é vc ler todo o arquivo, armazenar as linhas em um vetor (ou ArrayList) e aí sim fazer a operação de percorrê-la. Ou, opcionalmente, a cada linha percorrida, verificar (com um if simples) se é o registro que vc busca... ajudei?
Estou querendo gravar um arquivo de saida conforme exemplo, porem a minha entrada está em outro arquivo. Teria que ser algo do tipo. gravarArquivo.println(entrada.txt);
+Marcos Menezes Marcos a única alternativa q vc tem é ler o conteudo do seu arquivo original (linha a linha por exemplo) e a cada linha lida, gravar este conteudo no arquivo de destino. Ajudei??
@Professor Isidro Obrigado! Fiz a importação do arquivo que queria e fiz a gravação na mesma classe. Fiz um FileInput e um FileOutput na mesma classe. Fiz a leitura do arquivo e efetuei a gravação como queria. Tudo certo, mas era pra um processo seletivo e embora eu acho que tenha feito tudo certo, não fui selecionado.
Puxa q pena q vc não foi aprovado Marcos.... mas em princípio pelo q vc me disse a solução é correta... talvez eles quisessem que vc encapsulasse a operação de escrita em uma única operação... teria q conhecer o enunciado para poder trabalhar melhor a solução
Eu estou me preparando através de curso. Nunca trabalhei com desenvolvimento e sou focado em suporte em informática. Decidi aprender Java a partir dos meus 25 anos, mas como sempre foi muito dificil, a porta do suporte se abriu primeiro e por lá entrei! Mas agora quero Desenvolvimento e estou estudando sempre. Faço cursos para aprender, não sou excelente profissional, mas estou buscando aprender sempre. Vamos ver o que esse esforço resultará, por enquanto, as vezes me desanima mas depois que dou uma relaxada o desanimo passa.
Independente do sucesso ou não no concurso Marcos... seu conhecimento fica. E vc pode, inclusive utilizar este conhecimento para poder empreender e fazer algo para você mesmo. Ser "dono do seu Nariz", prestando serviços para outras pessoas, criando softwares que ajudem pequenos comércios... o universo é vasto e pode ser utilizado para seu sucesso. ;-)
Emiliana, tudo bem? No fundo pode ser mta coisa.. 1- seu netbeans é compatível com a versão do Java q vc tem na máquina? (Ex: netbeans 11 e java 8 não rodam bem em conjunto) 2 - quando vc abre o código, não aparece um botão de "código-fonte" pra vc clicar? 3 - vc já tentou reinstalá-lo?
ola, muito obrigado. video ajudou muito.... mas quero te pedir alguma coisa, como posso criar um arquivo, dentro de esse arquivo estara escrito , nome , apelido etc.. ex: isidro#professor o programa vai nos pedir pra inserir o nome e apilido. se existir o isidor#professor dentro do arquiv, sera lido , mas de nao houver isidro#professor dentro de arquivo, o arquivo se actualizara e regista no nome e apelido escrito ? obrigado.
Olá Uny, tudo bem? Na verdade sua dúvida é bem voltada para esta lógica que faço da leitura... Você tem várias formas para realizar isso: uma é ler o arquivo inteiro linha a linha e verificar se existe esse registro, por exemplo. Caso não haja esta linha, você pode reabrir o arquivo em modo escrita, com uma forma de adicionar linhas ao final (veja o comentário mais abaixo que eu explico isso: FileWriter f = new FileWriter("arquivo.txt", true); aí você só faz uma gravação simples no arquivo.
Alysson da sim.. a questao é q vc terá q abrir e fechar o arquivo a cada operacao q vc fizer.. se ler, abre o arquivo em modo leitura, faca tudo e feche... o mesmo em modo escrita
Consegui fazer a leitura e gravação. Mas esbarrei em nova duvida. No código abaixo busco o nome e seleciono este nome, mas como editar (modificar esse nome). Tem alguma sugestão? Obrigado pelas dicas, seus videos são ótmos. public static void editar(ArrayList Cli) { Scanner ler = new Scanner(System.in); String s; System.out.printf(" Informe o nome do contato: "); s = ler.nextLine(); int i, n = Cli.size(); s = s.toUpperCase(); String dados[]; for (i=0; i
Wenderley Carlos Olá Wenderley, pelo que entendi, você precisa ler o arquivo e armazenar em alguma estrutura de dados (até aí entendo que seu ArrayList tem os nomes). Por exemplo, você quer buscar todos os cadastros que contenham "João" no nome, correto? Pelo que pude perceber do seu código, você precisa vai fazer uma varredura no seu ArrayList e mostrar todas as posições que contém João. Mostre todas elas, e, ao editar o nome (com uma entrada de teclado) substitua a posição desejada do seu arrayList com o novo valor... algo assim: Cli.set(posicao, novoValor); espero ter ajudado ;-) abração
Salve André!!! é que eu acabo digitando muito rápido e acho q isso acelera demais o vídeo... tem algumas outras aulas que estou mais "calmo" rsrsrsrsrs valeu pela mensagem!! Abração
+Danilo Freire Danilo beleza? A diferença básica é que o FileReader/FileWriter sao exclusivos para manipular arquivos texto. O FileInputStream/FileOutputStream q eu uso servem tanto para arquivos texto quanto para arquivos binários (ler o conteúdo de uma imagem, por exemplo) Mas se falamos em arquivos de textos, ambos tem a mesma utilidade Ajudei? Abração
+Danilo Freire a versatilidade dos Input e Output Streams é justamente essa... eles trabalham com bytes... entao você pode escrever/ler arquivos textos ou outros formatos ;)
Alguém mais em set/2024? Que aula sensacional! Muito obrigada, professor Isidro!
Nossa q legal Adriana!!! e mesmo o vídeo bem antigo, o conteúdo permanece bem atual :)
Cara, obrigado pela aula. Você tem um dom nato de ensinar de forma muito clara e objetiva. Deu tudo certo.
Salve!! Q massa q o conteúdo ajudou!! A idéiando canal é essa mesma... qualquer duvida to por aqui... se preferir tem uma playlist completa de fundamentos de Java q eu dedico uma aula inteira a falae de arquivos.
2021 e usei algo de 2015 para escrever em um arquivo do projeto o qual trabalho....precisava escrever de uma forma mas tudo que achava não dava certo e colocando 2 linha no código usando seu exemplo me ajudo em algo q eu tava a mais de 1 horas procurando sobre
show Franciel!!! no fundo o conceito é o mesmo!! Independente do ano (ou da versão do Java), o acesso a arquivos é igual!!!
que bom que o conteúdo ajudou!!! To aqui pra isso :)
Me ajudou muito, como sou iniciante em java estava com dificuldades na leitura de arquivos txt em java e sua aula me ajudou bastante. Parabéns!!
+Vitoriano Ernandes Valeu Vitoriano!!!
Professor muito bom. Aprendi muito com ele. Hoje sou desenvolvedor Java. Obrigada professor
Louis vc nao tem idéia de como sua mensagem me deixa feliz. Ainda mais em saber q pude ajudar minimamente pra isso. Parabéns. O mérito é todo seu e continue nessa caminhada q vai te trazer muitas realizações. Conte sempre comigo!!
Me ajudou muito! Ótima explicação. Obrigado!
Valeu Luiz!!! Na playlist de Fundamentos de Java tem tambem um outro exemplo mais completinho sobre arquivos!!! Valeu mesmo!
Gostei muito, parabéns seu método de ensino é muito bom.
Valeu Rodrigo!!! Se liga q vai ter vir mais material legal :D
Vlw Professor Isidro! Tá ajudando muito nos trabalhos da facul!
+Anderson Ribas eu a agradeço a mensagem Anderson! Fico feliz q esteja ajudando
MUITO OBRIGADO!!! você é nota 10 em didática
Salve Lucas beleza?
Show de bola.. que bom que o vídeo tem ajudado!!! Tem bastante material aí no canal pra vc poder aproveitar :D
Professor Isidro já estou aproveitando, obrigado por acreditar e seguir com essa carreira maravilhosa, (atrasado) mas feliz dia dos professores :)
Muito boa aula.
Valeu Mestre!!! :D
Isidro... como sempre suas aulas são magnificas ! valeu mesmo!
Salve Antonilson!!! Valeu mesmo pela mensagem!!! Fiquei mto feliz em podet ajudar
Cara vc explica muito bem, parabéns!!
Valeu Davyson!!! Se quiser tem outras playlists no canal com cursos completos
Grande Professor! muito boa suas aulas
Salve Cassio!!! Super obrigado pela mensagem!! Tamo junto!!! Abração
Valeu Professor. Lembro das suas aulas de Shell Script na UniFieo.
Muito bom rever uma aula sua.
Parabéns pelo canal.
Grande Douglas!! Valeu mesmo pela mensagem!!! Ah e tv vou iniciar na 2a feira um curso de Java aqui pelo RUclips!! Se quiser, tá mais que convidado :D
Que video bom! Muito obgd! Vai me ajudar muito na resolução de uma tarefa!! 🙌🏻🙏🏻
Valeu mesmo Thai!!! Eu que agradeço pela mensagem!!! A idéia é ajudar a galera :D
// Para mostrar os caracteres especiais "ISO-8859-1"
FileInputStream arquivo = new FileInputStream(LocalArquivo);
InputStreamReader input = new InputStreamReader(arquivo, "ISO-8859-1");
BufferedReader br = new BufferedReader(input);
Boooa Brunao!! Sensacional!!
plena quarentena 2020 kkkk me ajudou bastante para um projeto da facu haha, muito obrigado professor :)
Eu q agradeço Giovanna!!! No canal tem bastante conteudo pra ajudar a galera hehhe
que se foda, quarentena 'e meu ovo
Rapaz... eu estava a horas pesquisando, pra conseguir ler um arquivo txt kkk... Seu vídeo ajudou muito, bem claro e simples, muito obrigado!!
Opa Thiago!!! Eu que agradeço pela mensagem!!! valeu mesmo!! Tamo aqui pra ajudar a galera :D
Parabéns, muito boa aula, didática, .
ai qui delicia
muito bom, bem objetivo
obrigado.
valeu Isaactamente!!! Tmj!!!
Obrigada! Ajudou bastante!
valeu Thayná!!! Se quiser tem uma playlist inteira de Java aqui no canal tb!!
Simples e direto!
Valeu Fernando!!! e na playlist de fundamentos de Java tb tem uma aula mais completa sobre arquivos!!! Pode conferir lá :)
abração!!
Parabéns pelo video! show de bola estou começando e estava precisando disto !!! minha intenção é preencher uma combobox com informações de um arquivo texto.
+Nelson Poker perdão pela demora, eu não recebi a notificação. Vc precisa basicamente preencher um ArrayList e associar este arrayList lido ao seu ComboBox. Se não me engano, a instrução é o setListData(seuArrayList)
Veja se rola e me avisa!! Valeu
Paulo não consigo responder diretamente seu comentário, mas a questão da Interface gráfica vc pode fazer da seguinte maneira: Criar um objeto que só manipula arquivos (recebe um objeto que vc preenche na Interface e ele faz a gravação ou leitura) e aí invocá-lo no evento de botão da sua interface. Abraço!
Boa noite professor, melhor vídeo explicativo e fácil entendimento . (olhei muitos pelo youtube). sugestão = Ensina coisas do dia a dia ! abraços.
Salve Lucas!!! Valeu mesmo pela mensagem!! Sugestão mais que aceita... se quiser trocar mais idéias, me manda um e-mail com as sugestões que vc tá pensando... são uma excelente forma de eu poder direcionar o conteúdo. (meu email tá na descrição do canal ou pelo site www.professorisidro.com.br)
Muito bom, meu ajudou bastante ❤️❤️
Salve!! Tem uma playlist de fundamentos de Java que uma das aulas é de manipulação de arquivos também!! Ela é mais completinha que essa aqui! Valeuu
Paulo a idéia é bem essa... cada linha do seu arquivo é um registro completo que vc pode dividi-lo em colounas através de algum caractere delimitador (como eu fiz no exemplo). Boa sorte nos estudos :)
Francisco Isidro faz um vídeo ensinando como copiar dados de uma tabela do Excel para uma tabela no programa java.
Adriano se vc salvar o arquivo do Excel no formato CSV, fica exatamente igual ao formato do arquivo q eu manipulo na aula ;)
Vi que o Java possui várias formas de ler e gravar arquivos. Inclusive, a partir da versão 7 ou 8 já pode usar a classe scanner para ler arquivo. Acho mais fácil usar o bufferedReader/Writer com FileReader/Writer como parâmetro.
Salve Fernando. Sim! Tem mtas alternativas para vc ler arquivos (inclusive usando a api java.NIO que é super rápida). Se vc quiser dar uma olhada, eu tb tenho outra aula q falo de arquivos textos e arquivos binários em uma playlist de Fundamentos de Java. Valeu!!! Abração
Obrigado!
Bruno!! Eu que agradeço a mensagem!! Se vc quiser, tem uma playlist de fundamentos de java aqui no canal q eu dou uma aula mais "completa" sobre manipulação de arquivos! Fique à vontade pra trocarmos idéias.
Valeu
Caraca Excelente!!!!!
Valeu Mauro!!! Tamo junto!!
MUITO, MUITO, MUITO MAS MUITO BOM MESMO
Opa!!! Valeu mesmo Roger!!! A idéia aqui é ajudar :D
abração
Excelente.
+Denis Adao valeu Denis!!! Tamo junto!!!
+Denis Adao valeu Denis!!!
Excelente aula!!!! Como faço pra fazer com que toda vez que que o usuário digitar e der enter, oq ele colocou seja armazenado na linha seguinte no arquivo? sem perder a informação anterior?
Salve Lucas, beleza?
Tá fácil.. na hora de vc criar o arquivo, basta vc incluir um 2o parâmetro boolean valendo TRUE para ele criar o arquivo em modo append. Assim:
f = new FileOutputStream(nome_do_arquivo, true);
se vc quiser a referência desta classe, tá na mão :D
docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html#FileOutputStream(java.lang.String,%20boolean)
espero ter ajudado!!
valeu!
Obrigado pela aula, por esse método de leitura consigo fazer a passagem de valores de determinada linha do arquivo para uma variável?
Salve Gunther beleza? Pelo metodo q eu uso nesse programa, vc tem q ler linha a linha e quando chegar na sua linha escolhida (tipo vc usar um contador pra indicar o numero de linhas lidas) vc pode sim testsr se é a linha escolhida e ler o valor... é perfeitamente possivel.
@@professorisidro sou novo em programação teria algum exemplo? obrigado
@@psYOrpheM Vamo lá Gunther... vou tentar colocar um "algoritmo" aqui bele?
numeroDaLinha = 0;
do{
linha = br.readLine(); // li o conteudo do arquivo
numeroDaLinha = numeroDaLinha+1; // contei +1 linha
if (numeroDaLinha == X) { // se o numero da linha for efetivamente do conteudo q eu preciso
variavel = linha; // ou alguma outra função de conversão ou para extrair dados da linha
break; // aí interrompe o loop pq não preciso mais ler o arquivo, cheguei na linha q queria
}
} while (linha != null);
ajudei?
valeu!!
Excelente vídeo aula Professor! Tenho uma dúvida como que eu faço pra mim determinar a decodificação desse arquivo tipo (Unicode, UTF-8, ANSI) etc.
Salve Tiago, bele?
Tem sim... se vc usa o InputStreamReader, existe um método chamado getEncoding que vc pode utilizar para saber a codificação do arquivo (docs.oracle.com/javase/7/docs/api/java/io/InputStreamReader.html#getEncoding%28%29). Agora, se vc quiser abri-lo com outra codificação, aí vc tem que criar um InputStreamReader passando esse charset e aí retornar o inputstream dele para poder fazer a leitura efetiva.
@@professorisidro Salve, Eu entendi professor mais a dúvida que eu tenho é para a criação do arquivo e não para a leitura. Como que eu uso o OutputStream e determinar o charset desse arquivo a ser criado. Por exemplo: o padrão é UTF-8 mais vamos supor que eu quero criar um arquivo.txt com o charset Unicode.
@@tiagosantana3499 Aaaah agora entendi... Então vc tem o objeto OutputStreamWriter que vc pode instanciar e mandar escrever nele. Ele tem um construtor onde vc passa qual o Arquivo (outputStream) e o tipo de codificação que vc quer... Olha a API dele aqui
docs.oracle.com/javase/7/docs/api/java/io/OutputStreamWriter.html#OutputStreamWriter(java.io.OutputStream,%20java.lang.String)
veja se ajuda!!!
@@professorisidro Opa ajudou sim e muito obrigado professor. Estou sempre assistindo seus vídeos. Abraço
Ajudou bastante obrigado, mais um seguidor..
Deixar uma critica construtiva se aumentar o zoom um pouquinho ficaria melhor :)
Salve Maikon!!! valeu pela dica!!! Vou observar isso sim :D Também tem outros vídeos em outras playlists... se puder dar uma olhada neles tb pra ver se estão bacanas, é legal pra ter um parâmetro (eu coloquei alguns em HD pra poder resolução ficar melhor na hora de ler o código). Abração
Maravilha Isidro !! E se eu quiser imprimir os dados do arquivo salvo no diretório(arquivo.txt) em uma JList através de um
JMenuItem, o que devo fazer ?
Melhor que isso, só dois disso.
Funcionou perfeitamente professor. Gostaria de saber como faço para adicionar mais nomes ao mesmo arquivo. Para que quando fosse executado novamente o programa, fosse acrescentado e não sobrescrito
Salve Thiago, bele? A única diferença é que, ao invés de vc usar apenas a classe File, troque-a por um FileWriter... aí o construtor dela fica como
FileWriter f = new FileWriter("arquivo.txt", true);
esse "true" indica que vc vai fazer operacões de append, ou seja, inserir novos valores no final do arquivo ;-)
ajudei?
valeu!!!
Ajudou sim professor, eu tinha encontrado esse solução ontem mesmo, mas não sabia o que estava fazendo o 'true', agora entendi. Obrigado. Parabéns pela iniciativa, ótimos videos
Olá, Muito bom!!
Professor tem como fazer um login utilizando o bloco de notas?
Olá Walesca tudo bem? É possível sim, no caso o arquivo que você criar no bloco de notas pode conter 1 ou 2 linhas com o usuário e a senha. Claro que este é um método extremamente inseguro pois o arquivo será lido por qualquer pessoa. Mas para testes e aprendizado, é um exemplo de como vc pode usar arquivos para recuperar estas informações. Ajudei?
Francisco, tenho interesse em passar dados numéricos em um formato de matriz presentes em um arquivo txt para um array multidimensional ( uma matriz semelhante ao arquivo txt), afim de manipular os valores da matriz (realizar cálculos). Como faço esse procedimento?
+vinicius Carneiro Salve Vinícius. Basicamente pensa assim:
- Ler linha a linha, ok?
- Para cada linha lida, vc irá decompor os termos em um vetor de várias colunas, certo? (tipo separando por vírgulas ou ponto-e-vírgula na notação do seu arquivo).
- Terceiro, vc deve fazer a conversão para cada valor lido (pois tudo é lido como String neste exemplo) e a partir disso, percorrer sua matriz linha/coluna
Consegui explicar?
Valeu
+Francisco Isidro Massetto
Obrigado Francisco. A sua colaboração tem sido de grande ajuda. Ainda estou com algumas dúvidas na elaboração do código, mas estou fazendo como você diz.
Como faço para criar um classificador de textos?
por exemplo, o usuário digita um anúncio de venda de automóvel, ao dar enter, o programa retorna "anúncio de produto".
Marcos depende do que você define como "classificador". Você pode classificar um texto colocando palavras em alguma ordem (alfabética, por exemplo). Aí você teria que ler as palavras do arquivo e aplicar algum algoritmo de classificação/ordenação sobre essas palavras (Bubble Sort, Quick Sort, etc). Outras formas de classificação podem ter como base algumas heurísticas que pegam palavras por "aproximação" ou mesmo "similaridade". Aí os algoritmos podem ficar muito mais complexos (dependendo do que se busca). Me fala mais sua dúvida pra eu poder ajudar. Valeuuu
A proposta deste trabalho é implementar um programa que, dado um texto em
português, identifique qual dentre os seguintes assuntos ele se trata:
• Bula de medicamento;
• Anúncio de produto;
• Miguxês (texto com gírias e abreviações de internet);
• Texto de livro de matemática;
• Texto de livro de biologia
- Arquivo de entrada
:
O arquivo de entrada conterá simplesmente um texto redigido em uma ou mais linhas.
Por estar em arquivo TXT, ele não terá quaisquer tipos de formatação especial. Abaixo, um
exemplo de arquivo de entrada:
Vendo Gol 1.0 16v 4 Portas Ar condicionado (precisa de revisão) Direção
Hidráulica Doc ok Mecanica revisada Com entrada boa, faço o restante em boleto
bancário precisa de alguns detalhes de lataria. Cel/whats: 67 99999-9999
- Arquivo de saída
:
O arquivo de saída conterá simplesmente a categoria a qual o texto do arquivo de
entrada se trata. Abaixo, o arquivo de saída referente ao texto da seção anterior:
Anúncio de produto
Qualquer dúvida
quintana.mqf@gmail.com
Marcos na verdade você tem que ler um arquivo texto e pelo visto verificar se algumas palavras se encontram nele... defina algum dicionário de palavras-chave que possam estar contidas em cada um dos textos. Ex: Se seu texto contem a palavra "vendo", "vender", "troco", "trocar", etc ele é um anúncio. Se tiver "posologia", "contra-indicações", ou qualquer outro, pode ser uma bula... e assim por diante....
Boa tarde, queria saber em qual ide ou motor de jogo a maioria dos app são feitos.
Victor Lucas Depende muito da linguagem e também do programador.Por exemplo:
Android: Eclipse, Android Studio
Windows Phone: Visual Studio
IOs: XCode
Games: Unity, Unreal, VIsual Studio, Eclipse
Francisco Isidro Massetto Ok, valeu aí professor :)
francisco, eu consigo abrir um txt numérico e converter em int , para setá-los em uma matriz ?
+mayco douglas Salve Mayco, claro q consegue... cada linha do arquivo pode corresponder a uma linha da sua matriz... vc pode separar os valores por espaço, por exemplo, e aí na hora de setar cada elemento, vc faz um Integer.parseInt de cada um... não é difícil não... pelo próprio exemplo dá pra ter uma boa noção :D
olá professor ótima aula! Gostaria de saber uma questão
Por que quando uso um FOR dentro do while (linha != de null) que fica dentro do try, o código funciona, mas aparece a mensagem de erro do catch
+João Pedro Carvalho João posta aqui o erro q ta rolando... pq o Catch pode gerar diferentes tipos de erros
usando append no lugar de setText aparece todo os nomes , porem nao um abaixo do outro
aí usa o "
" pra ver se eles são separados pelo delimitador de nova linha...
Boa noite Professor, como faço para Gravar um Arraylist em um arquivo?
Salve Vinicius bele?
na verdade não dá pra gravar direto.. vc teria que percorrer seu arraylist e gravar objeto por objeto (vc teria mais controle).... eu tenho uma outra aula na playlist de fundamentos de java que fala de manipulação de arquivos e fazemos exatamente esse exemplo..
ruclips.net/video/A4aWDtQh8CQ/видео.html
veja se ajuda!!! Valeu!!!
boa tarde Francisco e como eu poderia limitar a leitura por caracteres? tipo exemplo: linha = 55555kkkkkabobrinha, onde tenho que separar os números, os kkk e a abobrinha pela quantidade de caracter.
sds
Alex Santos
Alex Santos Alex bele? dá pra vc usar a substring... vc informa a posição inicial e a quantidade de caracteres a partir dela e você já separa... dá uma olhada em: docs.oracle.com/javase/8/docs/api/java/lang/String.html
Alex Santos valeu vou testar depois informo se deu certo.
oi, qual a diferença entre o que vc ensinou e o FileWriter eo BufferedWriter???
Salve Ramon td bem?
Vamos la:
O FileWriter é usado para você gravar arquivos texto enquanto que o FileOutputStream te permite gravar outras informações binarias (tipo bytes de uma imagem).
Ja o BufferedWriter pode ser usado pq a operação de write disponível no FileOutputStream e no FileWriter grava diretamente no arquivo, sendo uma operação de acesso direto ao disco. O uso do BufferedWriter traz melhor desempenho pq vc vai gravando em um buffer (ou seja, na memoria) e quando esse buffer atinge sua capacidade, aí sim é gravado no disco.
Ajudei?
Valeu!!
Professor Isidro vlw
Tamo junto!!
Professor, fui a uma palestra sua a uns 15 anos atraz, blz, estou precisando de fazer um sistema em java para ler tudo que entrar em uma rede privada, mas a rede nao tem um padrão o Sr tem uma ideia para me passar? por favor
Obrigado.
No segundo projeto que foi criado, a variável input é necessária?
+Jonatha Lima Olá Jonatha tudo bem? Na verdade se você não quiser, não é necessário não. Você pode mudar a linha para
BufferedReader br = new BufferedReader(new InputStreamReader(arquivo));
A idéia do código era ser didático :D
abraço!!
professor, estou tentando colocar esse arquivo de texto em um jtextField...mas so aparece uma linha. no que eu estaria errando,?
segue o codigo:
recebe.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
String linha;
FileInputStream input;
try {
input = new FileInputStream("Animais.txt");
InputStreamReader reader= new InputStreamReader(input);
BufferedReader buffer= new BufferedReader(reader);
linha=buffer.readLine();
String animais[]=linha.split(";");
for( int i=0;i
Salve Planeta Tribo!!! Na verdade tudo é baseado no Append!!! tenta com o append q deve ir :D
Mas como inserir informações no arquivo através do scanner(pelo teclado), mantendo a informação já contida no arquivo. Ex: como se fosse um cadastro
Wenderley Carlos Olá Wenderley... vou te dar 2 dicas:- Forma 1: Leia tudo, grave em uma estrutura de dados (mantenha em memória) e depois faça a escrita de tudo no arquivo. Isso é meio feio, mas é uma das maneiras
- Forma 2: o FileOutputStream tem uma sobrecarga no seu construtor, onde vc passa o nome do arquivo e um boolean se ele é "anexável" no final. Algo assim:
FileOutputStream f = new FileOutputStream("arquivo.txt", true);
aí vc só cria um PrintWriter e toda vez q vc der println ele escreve no final do arquivo.
Espero ter ajudado!
Professor, como faço pra atualizar e excluir um registro escrito no arquivo?
Salve Lucas. Usando a estratégia que eu fiz, o mais viável é vc ler todo o conteúdo, armazenar em uma lista todos os registros que vc quer (obviamente eliminando aquele que vc vai excluir) e aí refazer o arquivo.
Existem outras técnicas que se vc usar registros de tamanho fixo, vc pode ir até a posição do registro e escrever uma quantidade de bytes nele para poder alterá-lo (isso chama-se acesso aleatório a arquivos). Ou usar a estratégia dos bancos de dados que não excluem efetivamente, apenas marcam um registro como sendo inválido.
Ajudei?
abração
Como faço pra encontrar determinado cadastro dentro do arquivo e excluir/atualizar? Quais métodos eu uso?
Vlw Professor!
Lucas, perdão, não havia visto sua mensagem... então.. por conta dessa estratégia q eu usei, o ideal é vc ler todo o arquivo, armazenar as linhas em um vetor (ou ArrayList) e aí sim fazer a operação de percorrê-la. Ou, opcionalmente, a cada linha percorrida, verificar (com um if simples) se é o registro que vc busca... ajudei?
Sim, vlw professor! :D
Estou querendo gravar um arquivo de saida conforme exemplo, porem a minha entrada está em outro arquivo.
Teria que ser algo do tipo.
gravarArquivo.println(entrada.txt);
+Marcos Menezes Marcos a única alternativa q vc tem é ler o conteudo do seu arquivo original (linha a linha por exemplo) e a cada linha lida, gravar este conteudo no arquivo de destino.
Ajudei??
@Professor Isidro
Obrigado!
Fiz a importação do arquivo que queria e fiz a gravação na mesma classe.
Fiz um FileInput e um FileOutput na mesma classe.
Fiz a leitura do arquivo e efetuei a gravação como queria.
Tudo certo, mas era pra um processo seletivo e embora eu acho que tenha feito tudo certo, não fui selecionado.
Puxa q pena q vc não foi aprovado Marcos.... mas em princípio pelo q vc me disse a solução é correta... talvez eles quisessem que vc encapsulasse a operação de escrita em uma única operação... teria q conhecer o enunciado para poder trabalhar melhor a solução
Eu estou me preparando através de curso.
Nunca trabalhei com desenvolvimento e sou focado em suporte em informática.
Decidi aprender Java a partir dos meus 25 anos, mas como sempre foi muito dificil, a porta do suporte se abriu primeiro e por lá entrei! Mas agora quero Desenvolvimento e estou estudando sempre. Faço cursos para aprender, não sou excelente profissional, mas estou buscando aprender sempre.
Vamos ver o que esse esforço resultará, por enquanto, as vezes me desanima mas depois que dou uma relaxada o desanimo passa.
Independente do sucesso ou não no concurso Marcos... seu conhecimento fica. E vc pode, inclusive utilizar este conhecimento para poder empreender e fazer algo para você mesmo. Ser "dono do seu Nariz", prestando serviços para outras pessoas, criando softwares que ajudem pequenos comércios... o universo é vasto e pode ser utilizado para seu sucesso. ;-)
Oie meu netbeans não apresenta onde digitar o código (código fonte) quando crio uma classe aparece somente o histórico pfvr pode me ajudar ?
Emiliana, tudo bem? No fundo pode ser mta coisa..
1- seu netbeans é compatível com a versão do Java q vc tem na máquina? (Ex: netbeans 11 e java 8 não rodam bem em conjunto)
2 - quando vc abre o código, não aparece um botão de "código-fonte" pra vc clicar?
3 - vc já tentou reinstalá-lo?
ola, muito obrigado. video ajudou muito.... mas quero te pedir alguma coisa, como posso criar um arquivo, dentro de esse arquivo estara escrito , nome , apelido etc.. ex: isidro#professor
o programa vai nos pedir pra inserir o nome e apilido. se existir o isidor#professor dentro do arquiv, sera lido , mas de nao houver isidro#professor dentro de arquivo, o arquivo se actualizara e regista no nome e apelido escrito ? obrigado.
Olá Uny, tudo bem? Na verdade sua dúvida é bem voltada para esta lógica que faço da leitura... Você tem várias formas para realizar isso: uma é ler o arquivo inteiro linha a linha e verificar se existe esse registro, por exemplo.
Caso não haja esta linha, você pode reabrir o arquivo em modo escrita, com uma forma de adicionar linhas ao final (veja o comentário mais abaixo que eu explico isso: FileWriter f = new FileWriter("arquivo.txt", true);
aí você só faz uma gravação simples no arquivo.
Okay. Muito obrigado professor.
alguem sabe me dizer se posso fazer o leitor e escritor em um só projeto
Alysson da sim.. a questao é q vc terá q abrir e fechar o arquivo a cada operacao q vc fizer.. se ler, abre o arquivo em modo leitura, faca tudo e feche... o mesmo em modo escrita
Consegui fazer a leitura e gravação. Mas esbarrei em nova duvida. No código abaixo busco o nome e seleciono este nome, mas como editar (modificar esse nome). Tem alguma sugestão? Obrigado pelas dicas, seus videos são ótmos.
public static void editar(ArrayList Cli) {
Scanner ler = new Scanner(System.in);
String s;
System.out.printf("
Informe o nome do contato:
");
s = ler.nextLine();
int i, n = Cli.size();
s = s.toUpperCase();
String dados[];
for (i=0; i
Wenderley Carlos Olá Wenderley, pelo que entendi, você precisa ler o arquivo e armazenar em alguma estrutura de dados (até aí entendo que seu ArrayList tem os nomes). Por exemplo, você quer buscar todos os cadastros que contenham "João" no nome, correto? Pelo que pude perceber do seu código, você precisa vai fazer uma varredura no seu ArrayList e mostrar todas as posições que contém João. Mostre todas elas, e, ao editar o nome (com uma entrada de teclado) substitua a posição desejada do seu arrayList com o novo valor... algo assim:
Cli.set(posicao, novoValor);
espero ter ajudado ;-)
abração
Muito legal professor. Corre menos...kkkk eu tive que pausar bastante o vídeo...
Parabens!!!!
Salve André!!! é que eu acabo digitando muito rápido e acho q isso acelera demais o vídeo... tem algumas outras aulas que estou mais "calmo" rsrsrsrsrs
valeu pela mensagem!!
Abração
Qual a diferença pra esse método que aprendi?
=========Reader======
package conta;
import java.io.IOException;
import java.io.File;
import java.io.FileReader;
import java.io.BufferedReader;
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Reader {
ArrayListcontas = new ArrayList();
public Reader() {
try{
String nome,cpf,senha;
double saldo;
File arquivo = new File("Dados.txt");
FileReader fr = new FileReader(arquivo);
BufferedReader br = new BufferedReader(fr);
while(br.ready()){
nome =br.readLine();
cpf = br.readLine();
senha = br.readLine();
saldo = Double.parseDouble(br.readLine());
Conta transfere = new Conta(nome,cpf);
transfere.deposita(saldo);
transfere.alteraSenha(senha);
contas.add(transfere);
}
br.close();
fr.close();
}catch(IOException e){
JOptionPane.showMessageDialog(null,"Erro Reader");
}
}
public ArrayList retorna() {
return contas;
}
}
=========Writer=======
package conta;
import java.io.File;
import java.io.IOException;
import java.io.FileWriter;
import java.io.BufferedWriter;
import javax.swing.JOptionPane;
import java.util.ArrayList;
public class Writer{
public Writer(ArrayList contas) {
try {
String escreve;
File arquivo = new File("Dados.txt");
FileWriter fw = new FileWriter(arquivo);
BufferedWriter bw = new BufferedWriter(fw);
for(int i=0;i
Também gostaria de saber.
+Danilo Freire Danilo beleza? A diferença básica é que o FileReader/FileWriter sao exclusivos para manipular arquivos texto.
O FileInputStream/FileOutputStream q eu uso servem tanto para arquivos texto quanto para arquivos binários (ler o conteúdo de uma imagem, por exemplo)
Mas se falamos em arquivos de textos, ambos tem a mesma utilidade
Ajudei?
Abração
+Thiago Barboza thiago bele? Respondi a pergunta ali... veja se ajuda a explicação. Abraço
Obrigado! Ainda não sei usar FileInputStream e FileOutputStream.. Será que essas funções permitem fazer algo além de ler e escrever textos? vlw!
+Danilo Freire a versatilidade dos Input e Output Streams é justamente essa... eles trabalham com bytes... entao você pode escrever/ler arquivos textos ou outros formatos ;)
Ótima aula.
Valeu Sardemberg!!! Super obrigado pela mensagem!!!