Ola amigos do GUJ esse e meu primeiro post !estou tentando desenvolver um programa em java para ler um código com 80 números e retornar esses números de forma ordenada. exemplo
código:
1001201001133857J444800700010642010011310262500000 000000000000100000010900100000
REGRAS:
o numero de posição zero corresponde ao tipo de ação
o de posição 1 ate 3 correspondem ao código da empresa
o de posição 4 ate 11 corresponde a data do arquivo
…
pois bem minha duvida e a seguinte
pensei em criar um vetor[80] para armazenar toda a linha
depois de armazenado eu criaria uma regra usando o “for” ou outro contador para percorrer o vetor e pra cara posição eu usaria as regras citadas.
minha duvida esta exatamente no começo não sei como inserir essa linha de código toda em um vetor a não ser manualmente mas ai seria inviável !
já criei uma caixa interger.parseInt para que eu possa digitar mas eu queria tipo colar essa linha e o programa lesse cada opção e armazenasse em uma posição do vetor.
desde já agradeço a todos !!!
Olá
Não sei se entendi bem sua dúvida, mas fiz um sistema que achei ser o que você quer:
String numero = "1001201001133857J444800700010642010011310262500000 000000000000100000010900100000 "; // Numero
Vector vetor = new Vector();
//O comando String.substring(int,int); separa o numero em partes, seguindo as regras citadas;
//Caso voce queira transformar em int só usar o comand Integer.parseInt(String);
vetor.add(numero.substring(0, 1));
vetor.add(numero.substring(1, 4));
vetor.add(numero.substring(4, 12));
vetor.add(numero.substring(12, 81));
[quote=mrgamemr]Olá
Não sei se entendi bem sua dúvida, mas fiz um sistema que achei ser o que você quer:
[code]
String numero = "1001201001133857J444800700010642010011310262500000 000000000000100000010900100000 "; // Numero
Vector vetor = new Vector();
//O comando String.substring(int,int); separa o numero em partes, seguindo as regras citadas;
//Caso voce queira transformar em int só usar o comand Integer.parseInt(String);
vetor.add(numero.substring(0, 1));
vetor.add(numero.substring(1, 4));
vetor.add(numero.substring(4, 12));
vetor.add(numero.substring(12, 81));
[/code][/quote]
quando eu uso o Vector vetor=new Vector(); da erro !se eu entendi bem eu tenho que criar um vetor string… mas eu quero que o usuario digite o codigo e nao o codigo seja fixo no programa ! oque eu faço ???
Para usar o vector você deve importar-lo no topo do seu código:
import java.util.Vector;
Se o usuario for digitar o código você pode usar o comando:
String numero = JOptionPane.showInputDialog("Digite o numero:");
Veja como fica no final:
import java.util.Vector;
import javax.swing.JOptionPane;
/**
*
* @author mrgamemr
*/
public class Main {
public static void main(String[] args) {
try{
String numero = JOptionPane.showInputDialog("Digite o numero:"); // Numero
Vector vetor = new Vector();
//O comando String.substring(int,int); separa o numero em partes, seguindo as regras citadas;
//Caso voce queira transformar em int só usar o comand Integer.parseInt(String);
vetor.add(numero.substring(0, 1)); // o numero de posição zero corresponde ao tipo de ação
vetor.add(numero.substring(1, 4)); //o de posição 1 ate 3 correspondem ao código da empresa
vetor.add(numero.substring(4, 12));//o de posição 4 ate 11 corresponde a data do arquivo
vetor.add(numero.substring(12, 81));//...
/*
* Para imprimir na tela os numero você pode usar:
* System.out.println(vetor.get(n)); n=0,1,2,3...
*/
//****** Exemplo: ******
JOptionPane.showMessageDialog(null, "O numero da sua ação é: "+vetor.get(0)+"\nO código da sua empresa é:"+vetor.get(1));
}catch(StringIndexOutOfBoundsException e){
JOptionPane.showMessageDialog(null,"Digite um numero com 81 caracteres");
}
}
}