0
私のWebサイトからJSONファイルを取得して解析しようとしています。これまでの運がない、残念ながら。 BaslikContainerという名前の別のクラスを使用してデータを取得することができましたが、別のクラスで動作させるにはこのコードが必要ですが、これはarraylistのBaslikインスタンスを必要とするため、削除する必要がありました。Java JSONでNULL値を返す
誰かがこの問題を指摘できますか?例外はスローされません - なぜこれが起こっているのか分かりません。
package info.funstein.TestHttpGet;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URI;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class TestHttpGet {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception{
BufferedReader in = null;
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet();
request.setURI(new URI("http://dev.funstein.info/baslik.json"));
HttpResponse response = client.execute(request);
in = new BufferedReader
(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String line = "";
String NL = System.getProperty("line.separator");
while ((line = in.readLine()) != null) {
sb.append(line + NL);
}
in.close();
String page = sb.toString();
GsonBuilder gsonBuilder = new GsonBuilder();
Gson gson = gsonBuilder.create();
Basliklar basliklar = gson.fromJson(page, Basliklar.class);
System.out.println(basliklar);
}
}
class Basliklar {
private List<Baslik> basliklar;
@Override
public String toString() {
return String.format("[Basliklar: %1$s]", basliklar);
}
}
class Baslik {
private String baslikAdi;
private String baslikAcan;
private int baslikID;
public String getBaslikAdi() {
return baslikAdi;
}
public void setBaslikAdi(String baslikAdi) {
this.baslikAdi = baslikAdi;
}
public String getBaslikAcan() {
return baslikAcan;
}
public void setBaslikAcan(String baslikAcan) {
this.baslikAcan = baslikAcan;
}
public int getBaslikID() {
return baslikID;
}
public void setBaslikID(int baslikID) {
this.baslikID = baslikID;
}
@Override
public String toString() {
return String.format("[Baslik: baslikAdi=%1$s, baslikAcan=%2$s, baslikID=%3$d]",
baslikAdi, baslikAcan, baslikID);
}
}
ありがとうございます!それがトリックでした。 – funstein
ありがとうございます。答えを受け入れ;-) – andih