Ajuda

18 respostas
L

Ola Galera,
to precisando de ajuda....negocio é o seguinte:
tenho esse codigo ai,mas onde marquei com asterisco quero fazer uma modificacao.Quero que o susario digite o caminho do arquivo e ele fique armazenado naquela posicao...que alteracoes preciso fazer??

import java.io.*;
import java.util.*;

  public class array4 {
    BufferedReader inReader;//hdr
    PrintWriter outWriter;//hdr
    String line;//hdr

  private String[] args;

  public array4 ()  //constructor
    {
      BufferedReader inReader = null;
      PrintWriter outWriter = null;
     }

  public static void main(String[] args) {

    array4 f = new array4();
    f.readMyFile();
  }

  void readMyFile() {
    array4 f = new array4();
    DataInputStream data = null; //Variables
    DataOutputStream data2 = null;
    String record = null;
    int recCount = 0;
    int n_rows, n_cols;
    int c;
    double dummy;
    n_rows = 179; //x
    n_cols = 254; //y
    double[][] points = new double[n_rows][n_cols]; //2D Array
    float a; //receive datas from 2D Arry
    byte T[] = new byte[200];
    byte vetortext[] = new byte[200];
    int bytelidos = 0;

    String t;
    String line = null,lineTokens;//hdr
    int H_ncols;//hdr
    int H_nrows;//hdr
    double H_XCorner;//hdr
    double H_YCorner;//hdr
    int H_CellSize;//hdr
    String H_Byteorder;//hdr
    double H_Nodatavalue;//hdr
try {
File in = new File("G:/tiago/Java/JavaProjects/array4/classes/Nutz_Esri.flt"); ******
      FileInputStream fis = new FileInputStream(in);
      BufferedInputStream bis = new BufferedInputStream(fis);
      data = new DataInputStream(bis);
      for (int y = 0; y < n_cols; y++) {
        for (int x = 0; x < n_rows; x++) {
          try {
            points[x][y] = (double) data.readFloat();
            System.out.println("Input x : " + x + " ;" + " y : " + y + " ->" +
                               " Value : " + (float)points[x][y]);
          }
          catch (EOFException e) {
            // catch EOF occuring while reading
            System.out.println("ACHTUNG,got an EOFException error! " +
                               e.getMessage());
          }
        }
      }
    }

    catch (IOException e) {
      // catch io errors from FileInputStream or readLine()
      System.out.println("ACHTUNG, got an IOException error! " + e.getMessage());
    }
    finally {
      // if the file opened okay, make sure we close it
      if (data != null) {
        try {
          data.close();
        }
        catch
            (IOException ioe) {
        }
      }
    }

    File out = new File("G:/tiago/Java/JavaProjects/array4/classes/copy2.bin"); //copy-out
    FileOutputStream fos = null;
    try {
      fos = new FileOutputStream(out);
    }
    catch (FileNotFoundException ex) {
    }
    BufferedOutputStream bos = new BufferedOutputStream(fos);
   data2 = new DataOutputStream(bos);

    try {
      FileWriter saida = new FileWriter(out);
    }
    catch (IOException ex1) {
      System.out.println("Achtung,problems with creating the output file " +  ex1.getMessage());
    }

    for (int y = 0; y < n_cols; y++) {
      for (int x = 0; x < n_rows; x++) {

          try {
            a = (float)points[x][y];
            System.out.println("Output x : " + x + " ;" + " y : " + y + " ->" +
                               " Value : " + a);
            data2.writeFloat(a);

          }
          catch (IOException ioe) {
            System.out.println("Achtung,problems with writing data" + ioe.getMessage());

        }
      }

    }try{
      data2.close();
    }catch(IOException e) {
    e.getMessage();
    }
  }
}

18 Respostas

Y

Como assim o usuario digitar, a muitas formas de fazer isso…
Modo texto, Swing, JSP…

Escolha a que achar melhor…

Poderia fazer com swing usando um JOptionPane simples.

import javax.swing.*;

public class Exemplo{
    public static void main(){
        String caminho = JOptionPane.showInputDialog("Caminho","");
        ///E Passe como parametro para sua classe..
        array4 array=new array4();
        array.readMyFile(caminho);
   }
}

//Altere essas linhas na sua classe
......
void readMyFile(String caminho) { 
    .....
    File in = new File(caminho);
    ......
}

t+

L

Ola,
o usuario vai entrar com o caminho de onde esta o arquivo…vai colocar o diretorio,pastas,nome do arquivo…entendeu?
Sou iniciante em JAVA e nao conheco muito ainda…nao to conseguindo linkar o que vc escreveu com o meu programa…nao sei onde colocar isso.
Obrigado

cariocathi

Pq vc não utiliza o JFileChooser ?

L

Ola.
Pq nao sei como funciona isso…nao sei como aplicar isso no meu programa…por isso to pedindo ajuda a galera aki.
Vc pode me ajudar,deu uma olhada no codigo nas msgs acima…
Obrigado

L

Ola,
o usuario vai entrar com o caminho de onde esta o arquivo…vai colocar o diretorio,pastas,nome do arquivo…entendeu?
Sou iniciante em JAVA e nao conheco muito ainda…nao to conseguindo linkar o que vc escreveu com o meu programa…nao sei onde colocar isso.
Obrigado

cariocathi

Acho q se vc procurar no google como utilizar vai ser melhor do que eu ficar te explicando aki :). provavelmente vc vai achar vários exemplos pra se basear :stuck_out_tongue:

L

ok,
valew pela ajuda
Ate

cariocathi

Aki com certeza vc terá uma luz

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JFileChooser.html

L

Ok,
valew…vo tentar decifrar o que tem la…pq nao to muito acostumado com java ainda…tem 1 mes que to mexendo com isso…to meio boiando ainda.
Obrigado

aborges

“laine”:
Ok,
valew…vo tentar decifrar o que tem la…pq nao to muito acostumado com java ainda…tem 1 mes que to mexendo com isso…to meio boiando ainda.
Obrigado

Decifrar oq ?? Tah escrito em Ingles, nao em Russo :smiley:

L

Eu sei que num ta em russo,
mas nem sei por onde comecar a procurar…

cariocathi

Vc pode começar clicando em How to Use File Choosers
logo no começo da página :lol:

L

ok…
se eu usar esse JFileChooser meu programa vai ter uma janela igual akela pro usuario selecionar o arquivo que ele quer??

Daniel_Quirino_Olive

Olhe isso aqui: http://java.sun.com/docs/books/tutorial/uiswing/components/filechooser.html

L

Ok…deu certo…
eu tenho a rotina de abrir o arquivo selecionado pelo usuario…agora como vou “colar” ou “ajuntar” esse codigo com o codigo dessa janela de abrir o arquivo???

aborges

Nao foi vc q escreveu isso em outro topico agora pouco??

“laine”:
O Rogerio,
num entendi isso ai naum,acho que essas linhas nao sao o que to procurando.
Quero que o usuario digite o endereco do arquivo e preciso acessar essa variavel com o caminho do arquivo, e abrir o arquivo atraves dela…como faco isso?
O programa esta em fase de montagem,prototipo,entao nao vou montar interface grafica com o usuario ainda,quero que ele digite o endereco naquela janela de erros,onde eles aparecem ao compilar o programa.To usando o JBuilderX.
Espero resposta…
Obrigado

L

é…mas me responda pelo outro…onde coloquei o codigo

oazuc

uma pergunta boba:
se a dúvida, e o código, são os mesmos pq abrir duas threads ? :wink:

Criado 16 de abril de 2004
Ultima resposta 16 de abr. de 2004
Respostas 18
Participantes 6