Lendo Arquivo em certa posição!

6 respostas
D
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.swing.JOptionPane;

public class teste{
    
    public static void LerConfig(){
        
        StringBuffer sb = new StringBuffer();
        
        try{
            FileReader reader = new FileReader("c:/Config.txt");
            BufferedReader leitor = new BufferedReader(reader);
            String linha;
            do{
            linha = leitor.readLine();
            
                if(linha.startsWith("Email=")){
                String linhaemail = linha.substring(linha.indexOf("=")+1);
                sb.append(linhaemail + "\n"); 
                
            }
            }while(linha.startsWith("Email="));
            System.out.println(sb);
            leitor.close();
            reader.close();
        }catch(FileNotFoundException e){
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    public static void main(String args[]){
        LerConfig();
    }
}

aem querer apaguei o post original ://

6 Respostas

J

Tente assim:

RandomAccessFile arq = new RandomAccessFile("c:/config.ini", "r");
arq.seek(30);
byte[] bytes = new byte[20];
arq.read(bytes);

String email = new String(bytes, "ASCII");

Esse codigo lê 20 bytes a partir do byte 30.

H

Ola,

Provavelmente o arquivo config.ini é composto pares separeados por sinal de igual exemplo:

config.ini
nome=jose
[email protected]
etc…

A cada linha lida faca o seguinte

if (linha.startsWith("email=")) {
  String email = linha.substring(linha.indexOf("=")+1);
}
D

“helderam”:
Ola,

Provavelmente o arquivo config.ini é composto pares separeados por sinal de igual exemplo:

config.ini
nome=jose
[email protected]
etc…

A cada linha lida faca o seguinte

if (linha.startsWith("email=")) { String email = linha.substring(linha.indexOf("=")+1); }

Opa ótimo, vo testar aqui, é isso mesmo que estou querendo !!

D

Consegui fazer assim !! mas

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import javax.swing.JOptionPane;

public class teste{
  
  public static void LerConfig(){
    
    StringBuffer sb = new StringBuffer();
    
    try{
      FileReader reader = new FileReader("c:/Config.ini");
      BufferedReader leitor = new BufferedReader(reader);
      String linha;
      do{
        linha = leitor.readLine(); 
        
        if (linha.startsWith("Email=")) {
          
          String email = linha.substring(linha.indexOf("=")+1);
          sb.append(email + "\r\n" );
          System.out.println(sb);
        }
        
      } while(linha != null);
      
    System.out.println(sb);
      
      leitor.close();
      reader.close();
    }catch(FileNotFoundException e){
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
  public static void main(String args[]){
    LerConfig();
  }
}
Mas eu axo que esta dando um probleminha, da uma olhada, alguem sabe o que é isso, esta acontecendo um NullPointerException, logo abaixo
> java teste
 TESTE, VEJAMOS SE PEGA O ARQUIVO QUE EU QUERO

NullPointerException: 
  at teste.LerConfig(teste.java:23)
  at teste.main(teste.java:43)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  at java.lang.reflect.Method.invoke(Unknown Source)
>
H

Ola,

Nao tenho seu arquivo config.ini para fazer teste. Mas acredito que a alteracao abaixo resolve.

while( (linha = leitor.readLine()) != null) {
       
        if (linha.startsWith("Email=")) {
         
          String email = linha.substring(linha.indexOf("=")+1);
          sb.append(email + "\r\n" );
          System.out.println(sb);
        }
       
      }
D
"helderam":
Ola,

Nao tenho seu arquivo config.ini para fazer teste. Mas acredito que a alteracao abaixo resolve.

while( (linha = leitor.readLine()) != null) {
       
        if (linha.startsWith("Email=")) {
         
          String email = linha.substring(linha.indexOf("=")+1);
          sb.append(email + "\r\n" );
          System.out.println(sb);
        }
       
      }

Correto :) !!
Agradeço a ajuda !

Criado 14 de outubro de 2006
Ultima resposta 17 de out. de 2006
Respostas 6
Participantes 3