2012-03-13 16 views
1

xmlファイルの先頭に余分な文字が表示され、これが私の解析メソッドにエラーを引き起こします。私はURLからファイルを読み込むためにInputStreamReaderを使用しています。この余分な文字を削除するにはどうすればよいですか? in xml read

?<?xml version="1.0" encoding="utf-8"?> 

私のコードなので、(バイトオーダーマーク)、BOMと呼ばれ、あなたはそのxmlファイルを読むためにXMLパーサのインスタンスを使用する必要があります

public class Client { 

private static final String TAG = "Client"; 
public Client(){ 

} 

InputStream executePost(String targetURL, String urlParameters){ 

    URL url; 
    HttpURLConnection connection = null;   
    try{ 
     //Create connection 

     url = new URL(targetURL); 
     //Log.i(TAG,"Connecting to : "+targetURL); 
     connection = (HttpURLConnection)url.openConnection(); 

     connection.setRequestMethod("GET"); 
     connection.setRequestProperty("Content-Type", 
        "text/xml; charset=utf-8"); 
     connection.setRequestProperty("Content-Language", "en-US"); 
     connection.setRequestProperty("User-Agent", 
       "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11"); 

     connection.setUseCaches(false); 
     connection.setDoInput(true); 
     connection.setDoOutput(true); 



     //get response 
     InputStream is = connection.getInputStream(); 
     InputStreamReader reader = new InputStreamReader(is,"UTF-8"); 

     BufferedReader br = new BufferedReader(reader); 
     String line =""; 

     while((line = br.readLine()) != null){ 
      System.out.println(line); 

     } 


     return is; 


    }catch(Exception e){ 
     //Log.i(TAG,"Unable to create connection"); 
     e.printStackTrace(); 
     return null; 
    }finally { 

      if(connection != null) { 
      //Log.i(TAG,"Disconnecting"); 
      connection.disconnect(); 
      } 
    } 


} 

}

+0

あなたはファイルをどのようにエンコードしていますか?これはどの言語ですか、どんなプラットフォームですか? – Oded

+0

@Oded xmlパーサーがこれを手渡すことができる "UTF-8" – Fabii

答えて

1

興味があればそれに対処することができます。

+0

を使用していますか? – Fabii

+1

私はそのような目的のためにdom4jを使用しました。しかし、数多くの優れたJava XMLライブラリがあります。 – jabal

関連する問題