Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Dora

Editar Ficheiro

Mensagens Recomendadas

Dora    0
Dora

Olá

Estou no inicio da aprendizagem em java. Como faço para editar um ficheiro, utilizando uma interface? Já tenho as linhas do ficheiro num vector.

De cada linha tenho de tirar palavras-chave para serem editadas.

É muito dificil?

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

Tens um Vector ou um array ?

Array é com os [] Vector é uma class http://java.sun.com/javase/6/docs/api/java/util/Vector.html.

Bom em todo o caso tem em cada posição uma linha e queres tirar de lá palavras para substituir por outras correcto ?

Bom se for isso podes usar a função replace da Class String http://java.sun.com/javase/6/docs/api/java/lang/String.html.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

Cada linha do ficheiro está numa posicao do vector.

Quero retirar por exemplo da posicao i do vector, a palavra que tem 20 caracteres, depois colocar num campo da minha interface, editar e depois guardar.

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

5070199.4095  3583384.9046 -1461639.9580                  APPROX POSITION XYZ

Este é um exemplo de uma linha do meu ficheiro. Caso eu xegue à posicao do vector

em k a subtring == APPROX POSITION XYZ, devo retirar

X =5070199.4095

Y=3583384.9046

Z=-1461639.9580

E colocar nos respectivos campos do formulario para ser editados.

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

Bom uma forma simples de fazer isso é fazer um split por espaços e depois atribuir a cada variável x,y,z uma posição do array, o problema seria em casos de não termos as 3 coordenadas ou então estarem por outra ordem diferente de x,y,z.

Na minha opinião penso que só teria vantagens em usar XML para este caso, assim poderias dinamizar o mecanismo poupando tempo e recursos, mas como não sei o funcionamento do projecto não sei qual a melhor opção.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

Axo k estou a perceber. E depois para aparecer no campo do formulario. Cada campo gera um evento para cada evento tenho de xamar o vector?

Nao sei se me estou explicar bem!

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

Quando falas em interface estás a falar em GUI????????

Mas tu não és iniciante em Java???

Estou no inicio da aprendizagem em java.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

Posso dar um conselhozinho ?

Aprende bem Java primeiro especialmente a parte de POO e então depois passa para o GUI.

Mas se quiseres mesmo andar com isso vou ver o que posso fazer...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

Entao como  faço para preencher os campos  do meu formulario?

Tempo as linhas do ficheiro em cada posicao do vector. O formulário tem varios campos. Podes-me dar um exemplo simples

Dora :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

De uma forma genérica basta percorrer o array e a cada posição mete num campo, agora a nível de código depende do que estás a usar para fazer o interface.

Uma coisa ainda não consegui perceber se quando falas em vector te referes a um array ou mesmo a um Vector.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

Qdo falo em Vector falo mesmo num vector, não um array. Segundo o k li do meu livro cada campo do meu formulário gera um evento.

Entao aí percorro o vector e dessa posicao retiro uma substringn. e depois tento fazer aparecer no campo do meu formulário.É isso?

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

Bom a teoria é essa +- quando carregas num botão ou algo assim o formulário é preenchido, cada vez mais acho que seria um boa opção usar xml para guardados os dados, já agora o que estás a usar para o interface? Swing, SWT, AWT?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

LOL isso também se faz no IDE basta criares eventos e depois ires ao código e meteres dentro do método o código que queres executar, eu  digo isto como se fosse a coisa mais simples do mundo lol mas se calhar não vais achar assim tão simples...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

Eu dentro de: jButton1_actionPerformed(ActionEvent e) nao posso ler um ficheiro?

Tipo eu estou a tentar ler o ficheiro e ao imprimir no ecran para ver o k aparece, mas nao aparece nada.

O k estou a fazer mal?

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dora    0
Dora

void jButton1_actionPerformed(ActionEvent e) throws IOException {
    File fix=new File("D:\\Java\\InterfaceTeqc\\temp.txt");
    br = new BufferedReader(new FileReader(fix));
   System.out.println("Teste2");
    line = br.readLine();
    while (line!=null) {
      v.addElement(line);
      int res = line.indexOf("fim");
      if(res>0){
        break;
      }
      line=br.readLine();
      br.close();
    }

    for(int i=0;i<v.size();i++){
      System.out.println("Linha " + v.elementAt(i));
      String l = (String) v.elementAt(i);
      //System.out.println("Linha " + l);
      System.out.println("Linha " + l.substring(60));

        if (l.substring(60).equals("nome")) {
          nome=l.substring(0,20);
          idade=l.substring(20,60);
          jTextFieldversao.setText(nome);
          System.out.println(nome);

        }
    }

  }

Este ultimo System nao o faz e o substitui o  jTextFieldversao por nome.

Dora

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magician    2
magician

jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                //Codigo Aqui.
            }
        });

Tenta assim.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade